fabricatio 0.2.9.dev0__tar.gz → 0.2.9.dev1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/Cargo.lock +7 -0
  2. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/Cargo.toml +1 -0
  3. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/PKG-INFO +1 -1
  4. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/rules/draft_ruleset.py +12 -3
  5. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/pyproject.toml +1 -1
  6. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/rust.pyi +3 -0
  7. fabricatio-0.2.9.dev1/src/hbs_helpers.rs +18 -0
  8. fabricatio-0.2.9.dev1/src/language.rs +42 -0
  9. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/src/lib.rs +2 -0
  10. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/src/templates.rs +4 -1
  11. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/refined_query.hbs +1 -1
  12. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/rule_requirement.hbs +1 -1
  13. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/ruleset_requirement_breakdown.hbs +1 -1
  14. fabricatio-0.2.9.dev1/templates.tar.gz +0 -0
  15. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/uv.lock +43 -43
  16. fabricatio-0.2.9.dev0/src/hbs_helpers.rs +0 -9
  17. fabricatio-0.2.9.dev0/templates.tar.gz +0 -0
  18. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/.github/workflows/build-package.yaml +0 -0
  19. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/.github/workflows/ruff.yaml +0 -0
  20. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/.github/workflows/tests.yaml +0 -0
  21. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/.gitignore +0 -0
  22. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/.python-version +0 -0
  23. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/LICENSE +0 -0
  24. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/Makefile +0 -0
  25. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/README.md +0 -0
  26. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/correct/correct.py +0 -0
  27. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/correct/correct_loop.py +0 -0
  28. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/extract_and_inject/.gitignore +0 -0
  29. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/extract_and_inject/article_rag.py +0 -0
  30. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/extract_and_inject/ask.py +0 -0
  31. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/extract_and_inject/extract_and_inject.py +0 -0
  32. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/extract_article/extract.py +0 -0
  33. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/llm_usages/llm_usage.py +0 -0
  34. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/make_a_rating/rating.py +0 -0
  35. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/make_diary/commits.json +0 -0
  36. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/make_diary/diary.py +0 -0
  37. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/minor/hello_fabricatio.py +0 -0
  38. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/minor/write_a_poem.py +0 -0
  39. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/propose_task/propose.py +0 -0
  40. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/reviewer/review.py +0 -0
  41. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/rules/.gitignore +0 -0
  42. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/search_bibtex/.gitignore +0 -0
  43. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/search_bibtex/search.py +0 -0
  44. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/simple_chat/chat.py +0 -0
  45. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/simple_rag/simple_rag.py +0 -0
  46. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/task_handle/handle_task.py +0 -0
  47. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/write_article/.gitignore +0 -0
  48. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/write_article/article_rag.py +0 -0
  49. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/write_article/write_article.py +0 -0
  50. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/write_outline/.gitignore +0 -0
  51. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/write_outline/write_outline.py +0 -0
  52. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/examples/write_outline/write_outline_corrected.py +0 -0
  53. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/__init__.py +0 -0
  54. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/actions/__init__.py +0 -0
  55. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/actions/article.py +0 -0
  56. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/actions/article_rag.py +0 -0
  57. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/actions/output.py +0 -0
  58. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/actions/rag.py +0 -0
  59. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/actions/rules.py +0 -0
  60. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/__init__.py +0 -0
  61. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/advanced_judge.py +0 -0
  62. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/censor.py +0 -0
  63. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/check.py +0 -0
  64. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/correct.py +0 -0
  65. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/propose.py +0 -0
  66. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/rag.py +0 -0
  67. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/rating.py +0 -0
  68. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/review.py +0 -0
  69. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/capabilities/task.py +0 -0
  70. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/config.py +0 -0
  71. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/core.py +0 -0
  72. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/decorators.py +0 -0
  73. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/fs/__init__.py +0 -0
  74. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/fs/curd.py +0 -0
  75. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/fs/readers.py +0 -0
  76. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/journal.py +0 -0
  77. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/action.py +0 -0
  78. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/adv_kwargs_types.py +0 -0
  79. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/events.py +0 -0
  80. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/__init__.py +0 -0
  81. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/advanced_judge.py +0 -0
  82. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/article_base.py +0 -0
  83. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/article_essence.py +0 -0
  84. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/article_main.py +0 -0
  85. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/article_outline.py +0 -0
  86. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/article_proposal.py +0 -0
  87. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/patches.py +0 -0
  88. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/problem.py +0 -0
  89. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/extra/rule.py +0 -0
  90. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/generic.py +0 -0
  91. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/kwargs_types.py +0 -0
  92. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/role.py +0 -0
  93. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/task.py +0 -0
  94. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/tool.py +0 -0
  95. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/usages.py +0 -0
  96. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/models/utils.py +0 -0
  97. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/parser.py +0 -0
  98. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/py.typed +0 -0
  99. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/rust_instances.py +0 -0
  100. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/toolboxes/__init__.py +0 -0
  101. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/toolboxes/arithmetic.py +0 -0
  102. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/toolboxes/fs.py +0 -0
  103. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/utils.py +0 -0
  104. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/workflows/__init__.py +0 -0
  105. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/workflows/articles.py +0 -0
  106. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/python/fabricatio/workflows/rag.py +0 -0
  107. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/src/bib_tools.rs +0 -0
  108. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/src/hash.rs +0 -0
  109. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/as_prompt.hbs +0 -0
  110. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/binary-exploitation-ctf-solver.hbs +0 -0
  111. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/check_string.hbs +0 -0
  112. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/claude-xml.hbs +0 -0
  113. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/clean-up-code.hbs +0 -0
  114. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/co_validation.hbs +0 -0
  115. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/create_json_obj.hbs +0 -0
  116. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/cryptography-ctf-solver.hbs +0 -0
  117. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/dependencies.hbs +0 -0
  118. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/document-the-code.hbs +0 -0
  119. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/draft_rating_criteria.hbs +0 -0
  120. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/draft_rating_manual.hbs +0 -0
  121. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/draft_rating_weights_klee.hbs +0 -0
  122. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/draft_tool_usage_code.hbs +0 -0
  123. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/extract_criteria_from_reasons.hbs +0 -0
  124. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/extract_reasons_from_examples.hbs +0 -0
  125. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/find-security-vulnerabilities.hbs +0 -0
  126. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/fix-bugs.hbs +0 -0
  127. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/fix_troubled_obj.hbs +0 -0
  128. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/fix_troubled_string.hbs +0 -0
  129. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/generic_string.hbs +0 -0
  130. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/improve-performance.hbs +0 -0
  131. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/liststr.hbs +0 -0
  132. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/make_choice.hbs +0 -0
  133. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/make_judgment.hbs +0 -0
  134. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/pathstr.hbs +0 -0
  135. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/rate_fine_grind.hbs +0 -0
  136. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/refactor.hbs +0 -0
  137. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/retrieved_display.hbs +0 -0
  138. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/reverse-engineering-ctf-solver.hbs +0 -0
  139. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/review_string.hbs +0 -0
  140. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/task_briefing.hbs +0 -0
  141. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/web-ctf-solver.hbs +0 -0
  142. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/write-git-commit.hbs +0 -0
  143. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/write-github-pull-request.hbs +0 -0
  144. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/templates/built-in/write-github-readme.hbs +0 -0
  145. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/tests/test_config.py +0 -0
  146. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/tests/test_models/test_action.py +0 -0
  147. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/tests/test_models/test_advanced.py +0 -0
  148. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/tests/test_models/test_generic.py +0 -0
  149. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/tests/test_models/test_role.py +0 -0
  150. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/tests/test_models/test_task.py +0 -0
  151. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/tests/test_models/test_tool.py +0 -0
  152. {fabricatio-0.2.9.dev0 → fabricatio-0.2.9.dev1}/tests/test_models/test_usages.py +0 -0
@@ -453,6 +453,7 @@ dependencies = [
453
453
  "rayon",
454
454
  "serde_json",
455
455
  "walkdir",
456
+ "whichlang",
456
457
  ]
457
458
 
458
459
  [[package]]
@@ -2099,6 +2100,12 @@ dependencies = [
2099
2100
  "wasm-bindgen",
2100
2101
  ]
2101
2102
 
2103
+ [[package]]
2104
+ name = "whichlang"
2105
+ version = "0.1.1"
2106
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2107
+ checksum = "0b9aa3ad29c3d08283ac6b769e3ec15ad1ddb88af7d2e9bc402c574973b937e7"
2108
+
2102
2109
  [[package]]
2103
2110
  name = "winapi-util"
2104
2111
  version = "0.1.9"
@@ -15,6 +15,7 @@ pythonize = "0.23.0"
15
15
  rayon = "1.10.0"
16
16
  serde_json = "1.0.138"
17
17
  walkdir = "2.5.0"
18
+ whichlang = "0.1.1"
18
19
 
19
20
  [workspace]
20
21
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fabricatio
3
- Version: 0.2.9.dev0
3
+ Version: 0.2.9.dev1
4
4
  Classifier: License :: OSI Approved :: MIT License
5
5
  Classifier: Programming Language :: Rust
6
6
  Classifier: Programming Language :: Python :: 3.12
@@ -17,8 +17,7 @@ async def main() -> None:
17
17
  """Main function."""
18
18
  Role(
19
19
  name="Undergraduate Researcher",
20
- llm_temperature=1.15,
21
- llm_model="openai/deepseek-v3-250324",
20
+ llm_model="openai/qwen-plus",
22
21
  llm_rpm=1000,
23
22
  llm_tpm=3000000,
24
23
  llm_max_tokens=8190,
@@ -34,7 +33,17 @@ async def main() -> None:
34
33
  "4.to cover more references, we usually cite more than one articles that have similar opinions in a single sentence if possible.\n"
35
34
  "5.when using `#cite()` notation, you must be aware of the cite key should be wrapped by `<` and `>`, compiler wont let it pass compilation otherwise.",
36
35
  rule_count=5,
37
- ).to_task_output(),
36
+ output_key="en_ruleset"
37
+ ),
38
+ DraftRuleSet(
39
+ ruleset_requirement="1. 当在文章中引用其他文章作为参考文献时,应遵循(作者1,作者2等,年份)的格式进行标注。\n"
40
+ "2. 我们使用Typst生成数字引用格式。例如,对于BibTeX键为`YanWindEnergy2018`的文献,可通过输入`#cite(<YanWindEnergy2018>)`创建数字引用(注意:BibTeX键必须用尖括号`<`和`>`包裹)。这些标记会被编译器自动处理并输出为右上角的数字引用格式,例如文本旁的[1]。\n"
41
+ "3. 此外,由于`#cite()`每次只能引用单一文献,需通过叠加多个`#cite()`标记实现多文献引用。例如,若需引用三个BibTeX键分别为`YanWindEnergy2018`、`YanWindEnergy2019`和`YanWindEnergy2020`的文献,应输入`#cite(<YanWindEnergy2018>)#cite(<YanWindEnergy2019>)#cite(<YanWindEnergy2020>)`,编译后将呈现为[1,2,3]的右上角数字引用格式。\n"
42
+ "4. 为增加参考文献的覆盖率,我们通常建议在可能的情况下,将多个观点相似的文献合并引用于同一句子中。"
43
+ "5. 使用`#cite()`时需注意:BibTeX键必须用尖括号`<`和`>`包裹,否则编译器将拒绝通过编译。",
44
+ rule_count=5,
45
+ output_key="zh_ruleset"
46
+ ),
38
47
  PersistentAll(persist_dir="persistent"),
39
48
  ),
40
49
  )
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "fabricatio"
3
- version = "0.2.9-dev0"
3
+ version = "0.2.9-dev1"
4
4
  description = "A LLM multi-agent framework."
5
5
  readme = "README.md"
6
6
  license = { file = "LICENSE" }
@@ -76,6 +76,9 @@ def blake3_hash(content: bytes) -> str:
76
76
  Hex-encoded BLAKE3 hash string
77
77
  """
78
78
 
79
+ def detect_language(string:str)->str:
80
+ """Detect the language of a given string."""
81
+
79
82
  class BibManager:
80
83
  """BibTeX bibliography manager for parsing and querying citation data."""
81
84
 
@@ -0,0 +1,18 @@
1
+ use handlebars::handlebars_helper;
2
+ use serde_json::Value;
3
+ use whichlang::detect_language;
4
+ use crate::language::convert_to_string_respectively;
5
+ use blake3::hash as blake3_hash;
6
+
7
+ handlebars_helper!(len: |v: Value| match v {
8
+ Value::Array(arr) => arr.len(),
9
+ Value::Object(obj) => obj.len(),
10
+ Value::String(s) => s.len(),
11
+ _ => 0
12
+ });
13
+
14
+
15
+ handlebars_helper!(getlang: |v:String| convert_to_string_respectively(detect_language(v.as_str())));
16
+
17
+
18
+ handlebars_helper!(hash: |v:String| blake3_hash(v.as_bytes()).to_string());
@@ -0,0 +1,42 @@
1
+ use whichlang::{detect_language as dl, Lang};
2
+ use pyo3::prelude::*;
3
+
4
+
5
+
6
+
7
+ pub(crate) fn convert_to_string_respectively(lang:Lang)->String{
8
+ match lang {
9
+ Lang::Ara => "العربية".to_string(), // Arabic
10
+ Lang::Cmn => "简体中文".to_string(), // Mandarin Chinese
11
+ Lang::Deu => "Deutsch".to_string(), // German
12
+ Lang::Eng => "English".to_string(), // English
13
+ Lang::Fra => "Français".to_string(), // French
14
+ Lang::Hin => "हिन्दी".to_string(), // Hindi
15
+ Lang::Ita => "Italiano".to_string(), // Italian
16
+ Lang::Jpn => "日本語".to_string(), // Japanese
17
+ Lang::Kor => "한국어".to_string(), // Korean
18
+ Lang::Nld => "Nederlands".to_string(), // Dutch
19
+ Lang::Por => "Português".to_string(), // Portuguese
20
+ Lang::Rus => "Русский".to_string(), // Russian
21
+ Lang::Spa => "Español".to_string(), // Spanish
22
+ Lang::Swe => "Svenska".to_string(), // Swedish
23
+ Lang::Tur => "Türkçe".to_string(), // Turkish
24
+ Lang::Vie => "Tiếng Việt".to_string(), // Vietnamese
25
+ }
26
+ }
27
+
28
+
29
+
30
+
31
+ #[pyfunction]
32
+ #[pyo3(signature = (string))]
33
+ fn detect_language(string: String) -> String {
34
+ convert_to_string_respectively(dl(string.as_str()))
35
+ }
36
+
37
+
38
+ /// register the module
39
+ pub(crate) fn register(_: Python, m: &Bound<'_, PyModule>) -> PyResult<()> {
40
+ m.add_function(wrap_pyfunction!(detect_language,m)?)?;
41
+ Ok(())
42
+ }
@@ -2,6 +2,7 @@ mod templates;
2
2
  mod hash;
3
3
  mod hbs_helpers;
4
4
  mod bib_tools;
5
+ mod language;
5
6
 
6
7
  use pyo3::prelude::*;
7
8
 
@@ -16,6 +17,7 @@ fn _rust(python: Python, m: &Bound<'_, PyModule>) -> PyResult<()> {
16
17
  templates::register(python, m)?;
17
18
  hash::register(python, m)?;
18
19
  bib_tools::register(python, m)?;
20
+ language::register(python, m)?;
19
21
  Ok(())
20
22
  }
21
23
 
@@ -1,4 +1,4 @@
1
- use crate::hbs_helpers::len;
1
+ use crate::hbs_helpers::{len,getlang,hash};
2
2
  use handlebars::{no_escape, Handlebars};
3
3
  use pyo3::exceptions::PyRuntimeError;
4
4
  use pyo3::prelude::*;
@@ -100,8 +100,11 @@ impl TemplateManager {
100
100
  .collect()
101
101
  }
102
102
 
103
+
103
104
  fn register_builtin_helper(&mut self) {
104
105
  self.handlebars.register_helper("len", Box::new(len));
106
+ self.handlebars.register_helper("getlang", Box::new(getlang));
107
+ self.handlebars.register_helper("hash", Box::new(hash));
105
108
  }
106
109
  }
107
110
 
@@ -40,7 +40,7 @@ Refined:
40
40
  Refine the following {{len question}} {{#if question.[1]}}queries{{else}}query{{/if}}:
41
41
 
42
42
  {{#each question}}
43
- - "{{this}}"
43
+ - "{{this}}"
44
44
  {{/each}}
45
45
 
46
46
  Output ONLY the refined queries as a numbered list without explanations.
@@ -9,4 +9,4 @@ List the specific requirements that need to be met. Use bullet points for clarit
9
9
  Include any additional notes or considerations that are important for understanding or implementing the rule.
10
10
  {{rule_requirement}}
11
11
 
12
- The `Rule` instance you are going to generate must use the same language as the `Rule Requirement`!
12
+ The `Rule` instance you are going to generate must use the same language as the `Rule Requirement`, which is "{{getlang rule_requirement}}"!
@@ -16,4 +16,4 @@ Based on ruleset requirement provided above, you need to break it down to severa
16
16
  Most importantly, `RuleSet Generate requirement` is absolute, you must make sure your proposed rules satisfy all of it.
17
17
  The rule generation requirements each should be detailed and concise as much as possible and should be able to generate a valid rule.
18
18
  Detail ignore is unacceptable!
19
- the requirement for rule generation should use the same language as `RuleSet Generate requirement` does!
19
+ the requirement for rule generation should use the same language as `RuleSet Generate requirement` does, which is {{getlang ruleset_requirement}}!
Binary file
@@ -13,7 +13,7 @@ wheels = [
13
13
 
14
14
  [[package]]
15
15
  name = "aiohttp"
16
- version = "3.11.14"
16
+ version = "3.11.15"
17
17
  source = { registry = "https://mirrors.bfsu.edu.cn/pypi/web/simple" }
18
18
  dependencies = [
19
19
  { name = "aiohappyeyeballs" },
@@ -24,24 +24,24 @@ dependencies = [
24
24
  { name = "propcache" },
25
25
  { name = "yarl" },
26
26
  ]
27
- sdist = { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/6c/96/91e93ae5fd04d428c101cdbabce6c820d284d61d2614d00518f4fa52ea24/aiohttp-3.11.14.tar.gz", hash = "sha256:d6edc538c7480fa0a3b2bdd705f8010062d74700198da55d16498e1b49549b9c", size = 7676994 }
27
+ sdist = { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/19/18/31398875dc7b9815767370f60f44284155f2e1c1b87ec721c1b0ee61d1e5/aiohttp-3.11.15.tar.gz", hash = "sha256:b9b9a1e592ac8fcc4584baea240e41f77415e0de98932fdf19565aa3b6a02d0b", size = 7676625 }
28
28
  wheels = [
29
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/9c/ca/e4acb3b41f9e176f50960f7162d656e79bed151b1f911173b2c4a6c0a9d2/aiohttp-3.11.14-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:70ab0f61c1a73d3e0342cedd9a7321425c27a7067bebeeacd509f96695b875fc", size = 705489 },
30
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/84/d5/dcf870e0b11f0c1e3065b7f17673485afa1ddb3d630ccd8f328bccfb459f/aiohttp-3.11.14-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:602d4db80daf4497de93cb1ce00b8fc79969c0a7cf5b67bec96fa939268d806a", size = 464807 },
31
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/7c/f0/dc417d819ae26be6abcd72c28af99d285887fddbf76d4bbe46346f201870/aiohttp-3.11.14-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3a8a0d127c10b8d89e69bbd3430da0f73946d839e65fec00ae48ca7916a31948", size = 456819 },
32
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/28/db/f7deb0862ebb821aa3829db20081a122ba67ffd149303f2d5202e30f20cd/aiohttp-3.11.14-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca9f835cdfedcb3f5947304e85b8ca3ace31eef6346d8027a97f4de5fb687534", size = 1683536 },
33
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/5e/0d/8bf0619e21c6714902c44ab53e275deb543d4d2e68ab2b7b8fe5ba267506/aiohttp-3.11.14-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8aa5c68e1e68fff7cd3142288101deb4316b51f03d50c92de6ea5ce646e6c71f", size = 1738111 },
34
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/f5/10/204b3700bb57b30b9e759d453fcfb3ad79a3eb18ece4e298aaf7917757dd/aiohttp-3.11.14-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b512f1de1c688f88dbe1b8bb1283f7fbeb7a2b2b26e743bb2193cbadfa6f307", size = 1794508 },
35
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/cc/39/3f65072614c62a315a951fda737e4d9e6e2703f1da0cd2f2d8f629e6092e/aiohttp-3.11.14-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc9253069158d57e27d47a8453d8a2c5a370dc461374111b5184cf2f147a3cc3", size = 1692006 },
36
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/73/77/cc06ecea173f9bee2f20c8e32e2cf4c8e03909a707183cdf95434db4993e/aiohttp-3.11.14-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0b2501f1b981e70932b4a552fc9b3c942991c7ae429ea117e8fba57718cdeed0", size = 1620369 },
37
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/87/75/5bd424bcd90c7eb2f50fd752d013db4cefb447deeecfc5bc4e8e0b1c74dd/aiohttp-3.11.14-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:28a3d083819741592685762d51d789e6155411277050d08066537c5edc4066e6", size = 1642508 },
38
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/81/f0/ce936ec575e0569f91e5c8374086a6f7760926f16c3b95428fb55d6bfe91/aiohttp-3.11.14-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:0df3788187559c262922846087e36228b75987f3ae31dd0a1e5ee1034090d42f", size = 1685771 },
39
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/68/b7/5216590b99b5b1f18989221c25ac9d9a14a7b0c3c4ae1ff728e906c36430/aiohttp-3.11.14-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:9e73fa341d8b308bb799cf0ab6f55fc0461d27a9fa3e4582755a3d81a6af8c09", size = 1648318 },
40
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/a5/c2/c27061c4ab93fa25f925c7ebddc10c20d992dbbc329e89d493811299dc93/aiohttp-3.11.14-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:51ba80d473eb780a329d73ac8afa44aa71dfb521693ccea1dea8b9b5c4df45ce", size = 1704545 },
41
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/09/f5/11b2da82f2c52365a5b760a4e944ae50a89cf5fb207024b7853615254584/aiohttp-3.11.14-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:8d1dd75aa4d855c7debaf1ef830ff2dfcc33f893c7db0af2423ee761ebffd22b", size = 1737839 },
42
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/03/7f/145e23fe0a4c45b256f14c3268ada5497d487786334721ae8a0c818ee516/aiohttp-3.11.14-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:41cf0cefd9e7b5c646c2ef529c8335e7eafd326f444cc1cdb0c47b6bc836f9be", size = 1695833 },
43
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/1c/78/627dba6ee9fb9439e2e29b521adb1135877a9c7b54811fec5c46e59f2fc8/aiohttp-3.11.14-cp312-cp312-win32.whl", hash = "sha256:948abc8952aff63de7b2c83bfe3f211c727da3a33c3a5866a0e2cf1ee1aa950f", size = 412185 },
44
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/3f/5f/1737cf6fcf0524693a4aeff8746530b65422236761e7bfdd79c6d2ce2e1c/aiohttp-3.11.14-cp312-cp312-win_amd64.whl", hash = "sha256:3b420d076a46f41ea48e5fcccb996f517af0d406267e31e6716f480a3d50d65c", size = 438526 },
29
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/fb/9b/e3a30cfc8781af8f1175812a1a886f36b75c2ac92f1185ea48d1dc9ec2d3/aiohttp-3.11.15-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:433e7388b3063bba462b3362641988270b087a9ccae22390364f86b37a480c17", size = 704848 },
30
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/ea/b2/abd592077b79638ddfe36681c45670278e9b4a070b3d958f58c46b6dad24/aiohttp-3.11.15-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d99981304065f4ea407dd7495f74f8b8c10f0e26733f8a47dc174ece73744d14", size = 464529 },
31
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/c5/a1/85b0738f108806d3b1e1d83e8131cd7680c1266aad6f4d01737bee5cacc4/aiohttp-3.11.15-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a3739daa52c0cff42f1c40f63b2fe818fcf41019d84c80a7add3224207a7060f", size = 456517 },
32
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/c9/68/0460c66cafd826acd1bbd00e9fc9e1a7838ba56ca518540b1edccfd30cce/aiohttp-3.11.15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fd82d0b3f73c59c80dade0ca8e0342de1ee261e147140ade65a465be670e83c", size = 1691717 },
33
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/91/4b/f2d9c1d0a9e2c7faf080cfe4013b1ca637311fdf24b0023d1412f0cde0a1/aiohttp-3.11.15-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c930064b79cc0eb63678e376b819d546b0e2360264cd7544c32119496f646f35", size = 1736840 },
34
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/c0/d0/9b989329a912806b58162064e914f943e61a99c8606c103ec5862b34ab24/aiohttp-3.11.15-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:291f324f49ecede693dfb4820a412d1388cb10a2214ab60028252b505e105d6f", size = 1786852 },
35
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/87/a8/e1294430720c67aa92039075fc87ff71485cb80acac948b74c1b7b3e6955/aiohttp-3.11.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65eb40e74e3126cba185da7a78815cf3a30140932193831b3bfd73c79965c723", size = 1698027 },
36
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/ce/a8/35c7e118316cf27c8d42c5357b4893e31229117e69802da5d7874df2f690/aiohttp-3.11.15-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a6d6d86443580f846ec9cf60f899b7cace34411f2ff5c95db5970047195e5bfa", size = 1626494 },
37
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/48/0c/399e9aba5700591f2c1a9bdad24a4191d6aa497e6107852418c2c4254782/aiohttp-3.11.15-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8b4d8d78fbd5290204dcf43957a2184acd5cee358f203f24a3a97f7d7984eeb7", size = 1644005 },
38
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/0e/48/f0c11b78775d5a6f07c721983229f365860090ff8d57f04a526decff30b6/aiohttp-3.11.15-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:94c552a4864ed292dadf1d341213374284a3af72e49bea02e70ce6f07cb37004", size = 1685236 },
39
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/1c/4a/d3704524d11eab7c8f1b59a4b2c7b87129e3ac2cc8392b2072e5fd2ec277/aiohttp-3.11.15-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:23857adc919b64bba8a4db0eccb24e53fcaf85633e690ef1581c5562ed58cae7", size = 1650818 },
40
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/65/87/12275b20f4a5f5016c114ff12ca6b77e423903bca082f55adf1e729d266f/aiohttp-3.11.15-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:eba325409a0f990f9b43ed18916cbf5b9779bc4c979b8887c444e7be9c38ccca", size = 1704447 },
41
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/c9/99/a7709475303efac3fa929507ecdea1d7c9f9b49a14145eb0f382367f3997/aiohttp-3.11.15-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:f1b6c639750bf2a228957e25fcab7a7ff11987c543d70bf73223369f0d7bdb27", size = 1735337 },
42
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/36/b4/5d45c7343a38ff6b463ac860b9fe266f6bdc1c9a6b41ba4659ad3ede4a39/aiohttp-3.11.15-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2241d862dc6a3c0c2662a6934e79078d3a1e51a76c0dca5d65b30f3debee6c9b", size = 1697586 },
43
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/84/d9/61da0272c2b3a00ddbc3176d0eee268624f8dbd5c791f0be3a973ed0c851/aiohttp-3.11.15-cp312-cp312-win32.whl", hash = "sha256:18733fa6bbe44698ff96138c1f1d682bbdf0846250a42c25c108eed328fef0d4", size = 411667 },
44
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/c7/ae/c37d218057f9d69ac0423f049f989bbb8dfbe5bcc2404579c9a1958bddae/aiohttp-3.11.15-cp312-cp312-win_amd64.whl", hash = "sha256:0ec98c22030ea2a430cb11afddda7d4737b7e5c236c704f0d7d15504978598f7", size = 437969 },
45
45
  ]
46
46
 
47
47
  [[package]]
@@ -248,7 +248,7 @@ wheels = [
248
248
 
249
249
  [[package]]
250
250
  name = "fabricatio"
251
- version = "0.2.9.dev0"
251
+ version = "0.2.9.dev1"
252
252
  source = { editable = "." }
253
253
  dependencies = [
254
254
  { name = "appdirs" },
@@ -633,7 +633,7 @@ wheels = [
633
633
 
634
634
  [[package]]
635
635
  name = "litellm"
636
- version = "1.65.0"
636
+ version = "1.65.1"
637
637
  source = { registry = "https://mirrors.bfsu.edu.cn/pypi/web/simple" }
638
638
  dependencies = [
639
639
  { name = "aiohttp" },
@@ -648,9 +648,9 @@ dependencies = [
648
648
  { name = "tiktoken" },
649
649
  { name = "tokenizers" },
650
650
  ]
651
- sdist = { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/08/43/57e2efee4fc7e46d2c8e98e221158b0d9720237fd9d1d5dbff69c58c9037/litellm-1.65.0.tar.gz", hash = "sha256:147a74d18601ccaaff3ca125eba914ab6e5b5854aff480dce5a52be5b9d52ff8", size = 6679690 }
651
+ sdist = { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/da/d0/240bb0e7cb9c490aafff7c1c28e3cf7d68ac2c6089b49f90c64823207cb3/litellm-1.65.1.tar.gz", hash = "sha256:cbc8d7dfa5f7f47e6842796ca0c39682eb874718faab17fa991ab6c2f55e844c", size = 6695530 }
652
652
  wheels = [
653
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/e2/48/6985411f5fcb561c5da9ffef95fb71bb31e9ea812bdcb06d451f9c1727f5/litellm-1.65.0-py3-none-any.whl", hash = "sha256:bbc211f3d03e1830ed7f4304b40f70fa1fa4a2f9109d006ede5f78e83a189aba", size = 7012224 },
653
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/c1/25/217b796420d9cd9eabb539adb81701cf27f3677aef84a181bb89073491ad/litellm-1.65.1-py3-none-any.whl", hash = "sha256:56478866373c4af13d86e71ab44fd337305dee39a82d742bc496bc56a2d732a1", size = 7032194 },
654
654
  ]
655
655
 
656
656
  [[package]]
@@ -823,26 +823,26 @@ wheels = [
823
823
 
824
824
  [[package]]
825
825
  name = "multidict"
826
- version = "6.2.0"
826
+ version = "6.3.0"
827
827
  source = { registry = "https://mirrors.bfsu.edu.cn/pypi/web/simple" }
828
- sdist = { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/82/4a/7874ca44a1c9b23796c767dd94159f6c17e31c0e7d090552a1c623247d82/multidict-6.2.0.tar.gz", hash = "sha256:0085b0afb2446e57050140240a8595846ed64d1cbd26cef936bfab3192c673b8", size = 71066 }
828
+ sdist = { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/99/68/42bf1fb4272959aa7c0775caf53265c1a0da9d77f2d4e76326296c943811/multidict-6.3.0.tar.gz", hash = "sha256:2cf3e0781febf9f093eff3eca2d6dd7954ef2969ff46f6cd95173a4db8397fd8", size = 85840 }
829
829
  wheels = [
830
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/a4/e2/0153a8db878aef9b2397be81e62cbc3b32ca9b94e0f700b103027db9d506/multidict-6.2.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:437c33561edb6eb504b5a30203daf81d4a9b727e167e78b0854d9a4e18e8950b", size = 49204 },
831
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/bb/9d/5ccb3224a976d1286f360bb4e89e67b7cdfb87336257fc99be3c17f565d7/multidict-6.2.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:9f49585f4abadd2283034fc605961f40c638635bc60f5162276fec075f2e37a4", size = 29807 },
832
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/62/32/ef20037f51b84b074a89bab5af46d4565381c3f825fc7cbfc19c1ee156be/multidict-6.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5dd7106d064d05896ce28c97da3f46caa442fe5a43bc26dfb258e90853b39b44", size = 30000 },
833
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/97/81/b0a7560bfc3ec72606232cd7e60159e09b9cf29e66014d770c1315868fa2/multidict-6.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e25b11a0417475f093d0f0809a149aff3943c2c56da50fdf2c3c88d57fe3dfbd", size = 131820 },
834
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/49/3b/768bfc0e41179fbccd3a22925329a11755b7fdd53bec66dbf6b8772f0bce/multidict-6.2.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ac380cacdd3b183338ba63a144a34e9044520a6fb30c58aa14077157a033c13e", size = 136272 },
835
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/71/ac/fd2be3fe98ff54e7739448f771ba730d42036de0870737db9ae34bb8efe9/multidict-6.2.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:61d5541f27533f803a941d3a3f8a3d10ed48c12cf918f557efcbf3cd04ef265c", size = 135233 },
836
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/93/76/1657047da771315911a927b364a32dafce4135b79b64208ce4ac69525c56/multidict-6.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:facaf11f21f3a4c51b62931feb13310e6fe3475f85e20d9c9fdce0d2ea561b87", size = 132861 },
837
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/19/a5/9f07ffb9bf68b8aaa406c2abee27ad87e8b62a60551587b8e59ee91aea84/multidict-6.2.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:095a2eabe8c43041d3e6c2cb8287a257b5f1801c2d6ebd1dd877424f1e89cf29", size = 122166 },
838
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/95/23/b5ce3318d9d6c8f105c3679510f9d7202980545aad8eb4426313bd8da3ee/multidict-6.2.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a0cc398350ef31167e03f3ca7c19313d4e40a662adcb98a88755e4e861170bdd", size = 136052 },
839
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/ce/5c/02cffec58ffe120873dce520af593415b91cc324be0345f534ad3637da4e/multidict-6.2.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:7c611345bbe7cb44aabb877cb94b63e86f2d0db03e382667dbd037866d44b4f8", size = 130094 },
840
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/49/f3/3b19a83f4ebf53a3a2a0435f3e447aa227b242ba3fd96a92404b31fb3543/multidict-6.2.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:8cd1a0644ccaf27e9d2f6d9c9474faabee21f0578fe85225cc5af9a61e1653df", size = 140962 },
841
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/cc/1a/c916b54fb53168c24cb6a3a0795fd99d0a59a0ea93fa9f6edeff5565cb20/multidict-6.2.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:89b3857652183b8206a891168af47bac10b970d275bba1f6ee46565a758c078d", size = 138082 },
842
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/ef/1a/dcb7fb18f64b3727c61f432c1e1a0d52b3924016124e4bbc8a7d2e4fa57b/multidict-6.2.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:125dd82b40f8c06d08d87b3510beaccb88afac94e9ed4a6f6c71362dc7dbb04b", size = 136019 },
843
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/fb/02/7695485375106f5c542574f70e1968c391f86fa3efc9f1fd76aac0af7237/multidict-6.2.0-cp312-cp312-win32.whl", hash = "sha256:76b34c12b013d813e6cb325e6bd4f9c984db27758b16085926bbe7ceeaace626", size = 26676 },
844
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/3c/f5/f147000fe1f4078160157b15b0790fff0513646b0f9b7404bf34007a9b44/multidict-6.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:0b183a959fb88ad1be201de2c4bdf52fa8e46e6c185d76201286a97b6f5ee65c", size = 28899 },
845
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/9c/fd/b247aec6add5601956d440488b7f23151d8343747e82c038af37b28d6098/multidict-6.2.0-py3-none-any.whl", hash = "sha256:5d26547423e5e71dcc562c4acdc134b900640a39abd9066d7326a7cc2324c530", size = 10266 },
830
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/82/60/6905d85104d39092a9f6b21123f1d2df85d30b22dbd01e795b47c9b6eb32/multidict-6.3.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:2a83896925e3a2ddec736c48255572e6f15a95339024c02b800dab28e63461a3", size = 61868 },
831
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/e6/db/9223dcc59aa26f48e3915e0ce9c31a989a8225e3c794e0d6390772de6f9c/multidict-6.3.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:74e45386528db2d9346618276e8746507ec6ccb91512c5f02d2049ccafb0576e", size = 36835 },
832
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/21/1b/f7080011d022bfc68c2b29c329012f2b3d19c446e77a0dc34e0cdfaed768/multidict-6.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:bc15e81587b652bbeba9d4d7d3707bcaaa1d7b4aab2024c14be477662003a211", size = 35737 },
833
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/91/59/33391241661176e1691add307a72757faecf5ae035e16b93c527f52a1d51/multidict-6.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a716344c6e92551bdf842b999c7d7b34a13e32facf3e6c5942690c9883d45e3a", size = 245422 },
834
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/44/4a/e4f70e767067c9fd31e45d625490c128da4d63689ad99342e5e87599e5a9/multidict-6.3.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:299070f503a9a99e4af38d07da784ced28377cc62b678084b9e2e48fa51c57d3", size = 255425 },
835
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/2f/18/6c37d3e336e270cbe1deecf2b5669edde93dfabb15796c3e19362f06da0e/multidict-6.3.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2e87a8635a7db577617b50bd2f2080744ed20e556750b97e4f9988e6d20d3941", size = 251939 },
836
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/3b/47/76f9e21ad746262b70bc5992e69c840aec8f1501d3a974cc46678f334cf5/multidict-6.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8ab4ea5f49166b990411c522c1f5f901014932ead15a463616ec93e10fff2c05", size = 246197 },
837
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/88/4f/52b26ef6fef9b7dcc9083c5c9e3e621f300a06c7bb9a67aa0a167618ddc0/multidict-6.3.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2cef02d3878804909283549bc10d4789a14c610fcd286f17cd94a195b21fe469", size = 231438 },
838
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/09/dc/425c013d902ccad1b666bd06bfd7e2124a7be473e812ab812318858e5194/multidict-6.3.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a466c14574152b7caed5d76f1e46ae2963d33f5b0eb2dd915fa33870183b0f26", size = 249942 },
839
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/18/cb/277fe0a3d83e094716ee436d39a6707496d77c255fd235b0aed1e71deddc/multidict-6.3.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:883c07b404229e98d30b1ef64f07d4e3422d431ecd727c2ebba8549f70b2ba16", size = 243881 },
840
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/28/eb/3087bc61a29d62c9637699ed4f6dfc98759bc8e54a899477b1a309a17afb/multidict-6.3.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:767ed12b1662fac32d84eb43707e4f778b12554fc12ce3c8f7793a02111a9e32", size = 256525 },
841
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/10/a7/25f50ca151999ec32f1ade23be06cffe088e7ffe3fe826e05c1dbd84db6d/multidict-6.3.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:34ef116022119d3053ecce8ba62109c8b54a650a537b183e79de1db4078894a8", size = 252166 },
842
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/c6/4d/ac24c83fa6fe19b05b03fb7a3ca283eed5f74c26d238a41411fcd90a0c3a/multidict-6.3.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3ad737617d38c55c0b72cd3ea01bf5cbab0d75123de5e52c39643ddc6465cb5f", size = 248461 },
843
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/55/a9/cc2ec0dbdcb252ca461711363089d14a6ae80f97d8f0dcaffa025d1d5d4c/multidict-6.3.0-cp312-cp312-win32.whl", hash = "sha256:3d783be54d076843f58bf061fdaf1071789fb924fb35a0eb84dbc2c8b68499a2", size = 34640 },
844
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/9a/20/ad6bf2fd522c0ab35a942e35c8b21bc8197fad6890f66d725eebf03a8770/multidict-6.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:6fbe184451480c17f1f8dac160c9f3f6d243010fdb8416de4d3d7ee69ea65aa4", size = 37969 },
845
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/65/66/730bb6dbfbf87df8a341707ebd468044ea6c530605d41b3f31b494f03d6a/multidict-6.3.0-py3-none-any.whl", hash = "sha256:9ca652d9c6f68535537d75502b549ed0ca07fa6d3908f84f29f92148ec7310f2", size = 10266 },
846
846
  ]
847
847
 
848
848
  [[package]]
@@ -893,7 +893,7 @@ wheels = [
893
893
 
894
894
  [[package]]
895
895
  name = "openai"
896
- version = "1.69.0"
896
+ version = "1.70.0"
897
897
  source = { registry = "https://mirrors.bfsu.edu.cn/pypi/web/simple" }
898
898
  dependencies = [
899
899
  { name = "anyio" },
@@ -905,9 +905,9 @@ dependencies = [
905
905
  { name = "tqdm" },
906
906
  { name = "typing-extensions" },
907
907
  ]
908
- sdist = { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/ab/99/d164612528dfb7a9b19330623daded608e75d25823b01f81e0376eb388a4/openai-1.69.0.tar.gz", hash = "sha256:7b8a10a8ff77e1ae827e5e4c8480410af2070fb68bc973d6c994cf8218f1f98d", size = 409579 }
908
+ sdist = { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/87/f5/ae0f3cd226c2993b4ac1cc4b5f6ca099764689f403c14922c9356accec66/openai-1.70.0.tar.gz", hash = "sha256:e52a8d54c3efeb08cf58539b5b21a5abef25368b5432965e4de88cdf4e091b2b", size = 409640 }
909
909
  wheels = [
910
- { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/b8/a4/28113be8b7bc937656aaf7b06feff7e9a5eb742ee4e405c6c48c30d879c4/openai-1.69.0-py3-none-any.whl", hash = "sha256:73c4b2ddfd050060f8d93c70367189bd891e70a5adb6d69c04c3571f4fea5627", size = 599068 },
910
+ { url = "https://mirrors.bfsu.edu.cn/pypi/web/packages/e2/39/c4b38317d2c702c4bc763957735aaeaf30dfc43b5b824121c49a4ba7ba0f/openai-1.70.0-py3-none-any.whl", hash = "sha256:f6438d053fd8b2e05fd6bef70871e832d9bbdf55e119d0ac5b92726f1ae6f614", size = 599070 },
911
911
  ]
912
912
 
913
913
  [[package]]
@@ -1,9 +0,0 @@
1
- use handlebars::handlebars_helper;
2
- use serde_json::Value;
3
-
4
- handlebars_helper!(len: |v: Value| match v {
5
- Value::Array(arr) => arr.len(),
6
- Value::Object(obj) => obj.len(),
7
- Value::String(s) => s.len(),
8
- _ => 0
9
- });
Binary file
File without changes