fabricatio 0.2.8.dev3__cp312-cp312-win_amd64.whl → 0.2.9__cp312-cp312-win_amd64.whl

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 (48) hide show
  1. fabricatio/__init__.py +4 -11
  2. fabricatio/actions/__init__.py +1 -0
  3. fabricatio/actions/article.py +128 -165
  4. fabricatio/actions/article_rag.py +62 -46
  5. fabricatio/actions/output.py +60 -4
  6. fabricatio/actions/rag.py +2 -1
  7. fabricatio/actions/rules.py +72 -0
  8. fabricatio/capabilities/__init__.py +1 -0
  9. fabricatio/capabilities/censor.py +104 -0
  10. fabricatio/capabilities/check.py +148 -32
  11. fabricatio/capabilities/correct.py +162 -100
  12. fabricatio/capabilities/rag.py +5 -4
  13. fabricatio/capabilities/rating.py +109 -54
  14. fabricatio/capabilities/review.py +1 -1
  15. fabricatio/capabilities/task.py +2 -1
  16. fabricatio/config.py +14 -6
  17. fabricatio/fs/readers.py +20 -1
  18. fabricatio/models/action.py +63 -41
  19. fabricatio/models/adv_kwargs_types.py +25 -0
  20. fabricatio/models/extra/__init__.py +1 -0
  21. fabricatio/models/extra/advanced_judge.py +7 -4
  22. fabricatio/models/extra/article_base.py +125 -79
  23. fabricatio/models/extra/article_main.py +101 -19
  24. fabricatio/models/extra/article_outline.py +2 -3
  25. fabricatio/models/extra/article_proposal.py +15 -14
  26. fabricatio/models/extra/patches.py +20 -0
  27. fabricatio/models/extra/problem.py +64 -23
  28. fabricatio/models/extra/rule.py +39 -10
  29. fabricatio/models/generic.py +405 -75
  30. fabricatio/models/kwargs_types.py +23 -17
  31. fabricatio/models/task.py +1 -1
  32. fabricatio/models/tool.py +149 -14
  33. fabricatio/models/usages.py +55 -56
  34. fabricatio/parser.py +12 -13
  35. fabricatio/rust.cp312-win_amd64.pyd +0 -0
  36. fabricatio/{_rust.pyi → rust.pyi} +42 -4
  37. fabricatio/{_rust_instances.py → rust_instances.py} +1 -1
  38. fabricatio/utils.py +5 -5
  39. fabricatio/workflows/__init__.py +1 -0
  40. fabricatio/workflows/articles.py +3 -5
  41. fabricatio-0.2.9.data/scripts/tdown.exe +0 -0
  42. {fabricatio-0.2.8.dev3.dist-info → fabricatio-0.2.9.dist-info}/METADATA +1 -1
  43. fabricatio-0.2.9.dist-info/RECORD +61 -0
  44. fabricatio/_rust.cp312-win_amd64.pyd +0 -0
  45. fabricatio-0.2.8.dev3.data/scripts/tdown.exe +0 -0
  46. fabricatio-0.2.8.dev3.dist-info/RECORD +0 -53
  47. {fabricatio-0.2.8.dev3.dist-info → fabricatio-0.2.9.dist-info}/WHEEL +0 -0
  48. {fabricatio-0.2.8.dev3.dist-info → fabricatio-0.2.9.dist-info}/licenses/LICENSE +0 -0
fabricatio/parser.py CHANGED
@@ -45,13 +45,13 @@ class Capture(BaseModel):
45
45
  str | List[str]: The fixed text with the same type as input.
46
46
  """
47
47
  match self.capture_type:
48
- case "json":
48
+ case "json" if configs.general.use_json_repair:
49
+ logger.debug("Applying json repair to text.")
49
50
  if isinstance(text, str):
50
- return repair_json(text, ensure_ascii=False)
51
- return [repair_json(item, ensure_ascii=False) for item in text]
51
+ return repair_json(text, ensure_ascii=False) # pyright: ignore [reportReturnType]
52
+ return [repair_json(item, ensure_ascii=False) for item in text] # pyright: ignore [reportReturnType, reportGeneralTypeIssues]
52
53
  case _:
53
- return text
54
-
54
+ return text # pyright: ignore [reportReturnType]
55
55
 
56
56
  def capture(self, text: str) -> Tuple[str, ...] | str | None:
57
57
  """Capture the first occurrence of the pattern in the given text.
@@ -63,11 +63,10 @@ class Capture(BaseModel):
63
63
  str | None: The captured text if the pattern is found, otherwise None.
64
64
 
65
65
  """
66
- match = self._compiled.search(text)
67
- if match is None:
68
- logger.debug(f"Capture Failed: \n{text}")
66
+ if (match :=self._compiled.match(text) or self._compiled.search(text) ) is None:
67
+ logger.debug(f"Capture Failed {type(text)}: \n{text}")
69
68
  return None
70
- groups = self.fix(match.groups()) if configs.general.use_json_repair else match.groups()
69
+ groups = self.fix(match.groups())
71
70
  if self.target_groups:
72
71
  cap = tuple(groups[g - 1] for g in self.target_groups)
73
72
  logger.debug(f"Captured text: {'\n\n'.join(cap)}")
@@ -89,7 +88,7 @@ class Capture(BaseModel):
89
88
  if (cap := self.capture(text)) is None:
90
89
  return None
91
90
  try:
92
- return convertor(cap)
91
+ return convertor(cap) # pyright: ignore [reportArgumentType]
93
92
  except (ValueError, SyntaxError, ValidationError) as e:
94
93
  logger.error(f"Failed to convert text using {convertor.__name__} to convert.\nerror: {e}\n {cap}")
95
94
  return None
@@ -121,7 +120,7 @@ class Capture(BaseModel):
121
120
  judges.append(lambda output_obj: len(output_obj) == length)
122
121
 
123
122
  if (out := self.convert_with(text, deserializer)) and all(j(out) for j in judges):
124
- return out
123
+ return out # pyright: ignore [reportReturnType]
125
124
  return None
126
125
 
127
126
  @classmethod
@@ -134,7 +133,7 @@ class Capture(BaseModel):
134
133
  Returns:
135
134
  Self: The instance of the class with the captured code block.
136
135
  """
137
- return cls(pattern=f"```{language}\n(.*?)\n```", capture_type=language)
136
+ return cls(pattern=f"```{language}(.*?)```", capture_type=language)
138
137
 
139
138
  @classmethod
140
139
  def capture_generic_block(cls, language: str) -> Self:
@@ -143,7 +142,7 @@ class Capture(BaseModel):
143
142
  Returns:
144
143
  Self: The instance of the class with the captured code block.
145
144
  """
146
- return cls(pattern=f"--- Start of {language} ---\n(.*?)\n--- end of {language} ---", capture_type=language)
145
+ return cls(pattern=f"--- Start of {language} ---(.*?)--- end of {language} ---", capture_type=language)
147
146
 
148
147
 
149
148
  JsonCapture = Capture.capture_code_block("json")
Binary file
@@ -1,5 +1,20 @@
1
+ """Python interface definitions for Rust-based functionality.
2
+
3
+ This module provides type stubs and documentation for Rust-implemented utilities,
4
+ including template rendering, cryptographic hashing, language detection, and
5
+ bibliography management. The actual implementations are provided by Rust modules.
6
+
7
+ Key Features:
8
+ - TemplateManager: Handles Handlebars template rendering and management.
9
+ - BibManager: Manages BibTeX bibliography parsing and querying.
10
+ - Cryptographic utilities: BLAKE3 hashing.
11
+ - Text utilities: Word boundary splitting and word counting.
12
+ """
13
+
1
14
  from pathlib import Path
2
- from typing import Any, Dict, List, Optional
15
+ from typing import List, Optional
16
+
17
+ from pydantic import JsonValue
3
18
 
4
19
  class TemplateManager:
5
20
  """Template rendering engine using Handlebars templates.
@@ -41,7 +56,7 @@ class TemplateManager:
41
56
  This refreshes the template cache, finding any new or modified templates.
42
57
  """
43
58
 
44
- def render_template(self, name: str, data: Dict[str, Any]) -> str:
59
+ def render_template(self, name: str, data: JsonValue) -> str:
45
60
  """Render a template with context data.
46
61
 
47
62
  Args:
@@ -55,7 +70,7 @@ class TemplateManager:
55
70
  RuntimeError: If template rendering fails
56
71
  """
57
72
 
58
- def render_template_raw(self, template: str, data: Dict[str, Any]) -> str:
73
+ def render_template_raw(self, template: str, data: JsonValue) -> str:
59
74
  """Render a template with context data.
60
75
 
61
76
  Args:
@@ -76,6 +91,29 @@ def blake3_hash(content: bytes) -> str:
76
91
  Hex-encoded BLAKE3 hash string
77
92
  """
78
93
 
94
+ def detect_language(string: str) -> str:
95
+ """Detect the language of a given string."""
96
+
97
+ def split_word_bounds(string: str) -> List[str]:
98
+ """Split the string into words based on word boundaries.
99
+
100
+ Args:
101
+ string: The input string to be split.
102
+
103
+ Returns:
104
+ A list of words extracted from the string.
105
+ """
106
+
107
+ def word_count(string: str) -> int:
108
+ """Count the number of words in the string.
109
+
110
+ Args:
111
+ string: The input string to count words from.
112
+
113
+ Returns:
114
+ The number of words in the string.
115
+ """
116
+
79
117
  class BibManager:
80
118
  """BibTeX bibliography manager for parsing and querying citation data."""
81
119
 
@@ -162,7 +200,7 @@ class BibManager:
162
200
  Title if found, None otherwise
163
201
  """
164
202
 
165
- def get_field_by_key(self, key: str, field: str)-> Optional[str]:
203
+ def get_field_by_key(self, key: str, field: str) -> Optional[str]:
166
204
  """Retrieve a specific field by citation key.
167
205
 
168
206
  Args:
@@ -1,7 +1,7 @@
1
1
  """Some necessary instances."""
2
2
 
3
- from fabricatio._rust import TemplateManager
4
3
  from fabricatio.config import configs
4
+ from fabricatio.rust import TemplateManager
5
5
 
6
6
  TEMPLATE_MANAGER = TemplateManager(
7
7
  template_dirs=configs.templates.template_dir,
fabricatio/utils.py CHANGED
@@ -1,6 +1,6 @@
1
1
  """A collection of utility functions for the fabricatio package."""
2
2
 
3
- from typing import Any, Dict, List, Optional
3
+ from typing import Any, Dict, List, Mapping, Optional
4
4
 
5
5
  from questionary import text
6
6
 
@@ -25,16 +25,16 @@ async def ask_edit(
25
25
  return res
26
26
 
27
27
 
28
- def override_kwargs(kwargs: Dict[str,Any], **overrides) -> Dict[str, Any]:
28
+ def override_kwargs(kwargs: Mapping[str,Any], **overrides) -> Dict[str, Any]:
29
29
  """Override the values in kwargs with the provided overrides."""
30
- new_kwargs = kwargs.copy()
30
+ new_kwargs = dict(kwargs.items())
31
31
  new_kwargs.update({k: v for k, v in overrides.items() if v is not None})
32
32
  return new_kwargs
33
33
 
34
34
 
35
- def fallback_kwargs(kwargs: Dict[str, Any], **overrides) -> Dict[str, Any]:
35
+ def fallback_kwargs(kwargs: Mapping[str, Any], **overrides) -> Dict[str, Any]:
36
36
  """Fallback the values in kwargs with the provided overrides."""
37
- new_kwargs = kwargs.copy()
37
+ new_kwargs = dict(kwargs.items())
38
38
  new_kwargs.update({k: v for k, v in overrides.items() if k not in new_kwargs and v is not None})
39
39
  return new_kwargs
40
40
 
@@ -0,0 +1 @@
1
+ """A module containing some builtin workflows."""
@@ -1,6 +1,6 @@
1
1
  """Store article essence in the database."""
2
2
 
3
- from fabricatio.actions.article import CorrectOutline, CorrectProposal, GenerateArticleProposal, GenerateOutline
3
+ from fabricatio.actions.article import GenerateArticleProposal, GenerateInitialOutline
4
4
  from fabricatio.actions.output import DumpFinalizedOutput
5
5
  from fabricatio.models.action import WorkFlow
6
6
 
@@ -9,7 +9,7 @@ WriteOutlineWorkFlow = WorkFlow(
9
9
  description="Generate an outline for an article. dump the outline to the given path. in typst format.",
10
10
  steps=(
11
11
  GenerateArticleProposal,
12
- GenerateOutline(output_key="to_dump"),
12
+ GenerateInitialOutline(output_key="article_outline"),
13
13
  DumpFinalizedOutput(output_key="task_output"),
14
14
  ),
15
15
  )
@@ -18,9 +18,7 @@ WriteOutlineCorrectedWorkFlow = WorkFlow(
18
18
  description="Generate an outline for an article. dump the outline to the given path. in typst format.",
19
19
  steps=(
20
20
  GenerateArticleProposal,
21
- CorrectProposal(output_key="article_proposal"),
22
- GenerateOutline,
23
- CorrectOutline(output_key="to_dump"),
21
+ GenerateInitialOutline(output_key="article_outline"),
24
22
  DumpFinalizedOutput(output_key="task_output"),
25
23
  ),
26
24
  )
Binary file
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fabricatio
3
- Version: 0.2.8.dev3
3
+ Version: 0.2.9
4
4
  Classifier: License :: OSI Approved :: MIT License
5
5
  Classifier: Programming Language :: Rust
6
6
  Classifier: Programming Language :: Python :: 3.12
@@ -0,0 +1,61 @@
1
+ fabricatio-0.2.9.dist-info/METADATA,sha256=iSix0miJegCjPx6jm8CJdP_dIoOmU9_nOU-KV7qBWDE,5283
2
+ fabricatio-0.2.9.dist-info/WHEEL,sha256=jABKVkLC9kJr8mi_er5jOqpiQUjARSLXDUIIxDqsS50,96
3
+ fabricatio-0.2.9.dist-info/licenses/LICENSE,sha256=do7J7EiCGbq0QPbMAL_FqLYufXpHnCnXBOuqVPwSV8Y,1088
4
+ fabricatio/actions/article.py,sha256=fth5opH9RWYrVwpl4yub1kUbXlvD0tclZSop9sHLa-4,13493
5
+ fabricatio/actions/article_rag.py,sha256=itGH-VCKTVFm7hrYIOOT4FyFXP8CbL042kpYNI9a2BE,4735
6
+ fabricatio/actions/output.py,sha256=gkC2u_VpMJ6jOnbyRAJN24UVK7iDAMzhItYukaW8Spk,6498
7
+ fabricatio/actions/rag.py,sha256=5nSih3YUkdt1uU02hSAMW6sADq9mkMOR1wDv7zIrIGQ,2737
8
+ fabricatio/actions/rules.py,sha256=SNvAvQx4xUare16Za_dEpYlYI_PJNnbiO-E0XDa5JT4,2857
9
+ fabricatio/actions/__init__.py,sha256=wVENCFtpVb1rLFxoOFJt9-8smLWXuJV7IwA8P3EfFz4,48
10
+ fabricatio/capabilities/advanced_judge.py,sha256=selB0Gwf1F4gGJlwBiRo6gI4KOUROgh3WnzO3mZFEls,706
11
+ fabricatio/capabilities/censor.py,sha256=bBT5qy-kp7fh8g4Lz3labSwxwJ60gGd_vrkc6k1cZ1U,4719
12
+ fabricatio/capabilities/check.py,sha256=kYqzohhv2bZfl1aKSUt7a8snT8YEl2zgha_ZdAdMMfQ,8622
13
+ fabricatio/capabilities/correct.py,sha256=W_cInqlciNEhyMK0YI53jk4EvW9uAdge90IO9OElUmA,10420
14
+ fabricatio/capabilities/propose.py,sha256=hkBeSlmcTdfYWT-ph6nlbtHXBozi_JXqXlWcnBy3W78,2007
15
+ fabricatio/capabilities/rag.py,sha256=8TTJSV2Tz0naXyOQ5c_RQ4h9ZxyOOSE7BvyWxKkQMU0,17722
16
+ fabricatio/capabilities/rating.py,sha256=Wt_H5fA1H4XuZGIMI8pr0cp_6jnXJABlo8lfU_4Fp5A,17645
17
+ fabricatio/capabilities/review.py,sha256=-EMZe0ADFPT6fPGmra16UPjJC1M3rAs6dPFdTZ88Fgg,5060
18
+ fabricatio/capabilities/task.py,sha256=JahC61X233UIPsjovxJgc_yqj_BjWZJBCzJZq11M2Xk,4417
19
+ fabricatio/capabilities/__init__.py,sha256=v1cHRHIJ2gxyqMLNCs6ERVcCakSasZNYzmMI4lqAcls,57
20
+ fabricatio/config.py,sha256=gqhdKxoj4S0EmQKprAEWUARn7yJg-w5UJ7d7GPlyttw,17631
21
+ fabricatio/core.py,sha256=VQ_JKgUGIy2gZ8xsTBZCdr_IP7wC5aPg0_bsOmjQ588,6458
22
+ fabricatio/decorators.py,sha256=C0Gi7wcXC-0sWITqsSv3JdBGcgVJOlRvOt0FfO0aUsA,7554
23
+ fabricatio/fs/curd.py,sha256=p8y0LGKgVDk-CWOlm37E6wg7RK6RCD6denKo-VsW28c,4763
24
+ fabricatio/fs/readers.py,sha256=M5kojKWsJQMQpE4CBbYvas0JKmPaiaYSfWmiqJx1SP4,1884
25
+ fabricatio/fs/__init__.py,sha256=PCf0s_9KDjVfNw7AfPoJzGt3jMq4gJOfbcT4pb0D0ZY,588
26
+ fabricatio/journal.py,sha256=stnEP88aUBA_GmU9gfTF2EZI8FS2OyMLGaMSTgK4QgA,476
27
+ fabricatio/models/action.py,sha256=Kfa-zojgHQ1vPoC2lQp-thTTp0oySKn7k6I4ea6iYTs,9837
28
+ fabricatio/models/adv_kwargs_types.py,sha256=dcYMLn6xcnWLZTLTBdtpgUZWi-VBeub721GzHRZFT1g,860
29
+ fabricatio/models/events.py,sha256=QvlnS8FEELg6KNabcJMeh2GV_y0ZBzKOPphcteKYWYU,4183
30
+ fabricatio/models/extra/advanced_judge.py,sha256=INUl_41C8jkausDekkjnEmTwNfLCJ23TwFjq2cM23Cw,1092
31
+ fabricatio/models/extra/article_base.py,sha256=2Jn9m2MefqtwhoGLbM6FjcYEErAxEju7Al5V89lx43A,20119
32
+ fabricatio/models/extra/article_essence.py,sha256=xd6j-PDqjhrMjgUmyfk6HqkyMLu-sS9feUo0sZ3QABY,2825
33
+ fabricatio/models/extra/article_main.py,sha256=PSOcVhkY5RJS1Kv5y1JvwHaGggJoUQk7A4YNPUlp8a8,11438
34
+ fabricatio/models/extra/article_outline.py,sha256=w7O0SHgC7exbptWVbR62FMHAueMgBpyWKVYMGGl_oj8,1427
35
+ fabricatio/models/extra/article_proposal.py,sha256=NbyjW-7UiFPtnVD9nte75re4xL2pD4qL29PpNV4Cg_M,1870
36
+ fabricatio/models/extra/patches.py,sha256=_WNCxtYzzsVfUxI16vu4IqsLahLYRHdbQN9er9tqhC0,997
37
+ fabricatio/models/extra/problem.py,sha256=zZEnjBW2XGRVpJpUp09f1J_w5A1zU-LhxX78AVCq9ts,7113
38
+ fabricatio/models/extra/rule.py,sha256=ogJJYmV5F-CIRG2Dl95plgShskT8jzuh_0KWKHRonbA,2668
39
+ fabricatio/models/extra/__init__.py,sha256=XlYnS_2B9nhLhtQkjE7rvvfPmAAtXVdNi9bSDAR-Ge8,54
40
+ fabricatio/models/generic.py,sha256=4gMcVS7Z4rrsLX5aKKv739d3_05_6xQszJfze5Ss4b8,30663
41
+ fabricatio/models/kwargs_types.py,sha256=sMDA85SoC1AOJ5k6qC8qUiUv0Ne0_5ThU9FZITRNen4,5673
42
+ fabricatio/models/role.py,sha256=-CRcj5_M3_ciLPzwiNn92grBmwoSLQ-n4koVZiCNTBM,2953
43
+ fabricatio/models/task.py,sha256=YXvO3upJkTqMQjPgUGfp0bIiSyZzek2f4IagHdMW5Ik,10491
44
+ fabricatio/models/tool.py,sha256=jQ51g4lwTPfsMF1nbreDJtBczbxIHoXcPuLSOqHliq8,12506
45
+ fabricatio/models/usages.py,sha256=PX13lUCYB9XSM5tKrpYK-ov5jKclWlF9xGmPgUoovLk,32030
46
+ fabricatio/models/utils.py,sha256=Ac5g-8ic6q_w7dhNuh-iiofpL1sqOACxbjPPTljP2LY,4417
47
+ fabricatio/parser.py,sha256=qN2godNsArmb90btOMxgqlol57166DyYsV2JlU8DlHs,6532
48
+ fabricatio/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
+ fabricatio/rust.pyi,sha256=5xfla5dCACfKTkHztMc5_iCEmdDZtDH9HPG2YC92L8o,6266
50
+ fabricatio/rust_instances.py,sha256=Byeo8KHW_dJiXujJq7YPGDLBX5bHNDYbBc4sY3uubVY,313
51
+ fabricatio/toolboxes/arithmetic.py,sha256=WLqhY-Pikv11Y_0SGajwZx3WhsLNpHKf9drzAqOf_nY,1369
52
+ fabricatio/toolboxes/fs.py,sha256=l4L1CVxJmjw9Ld2XUpIlWfV0_Fu_2Og6d3E13I-S4aE,736
53
+ fabricatio/toolboxes/__init__.py,sha256=KBJi5OG_pExscdlM7Bnt_UF43j4I3Lv6G71kPVu4KQU,395
54
+ fabricatio/utils.py,sha256=uy-W5b1d8oM1UTk2IT1lLGKIn_Pmo3XU5xbahjyDESE,1710
55
+ fabricatio/workflows/articles.py,sha256=ObYTFUqLUk_CzdmmnX6S7APfxcGmPFqnFr9pdjU7Z4Y,969
56
+ fabricatio/workflows/rag.py,sha256=-YYp2tlE9Vtfgpg6ROpu6QVO8j8yVSPa6yDzlN3qVxs,520
57
+ fabricatio/workflows/__init__.py,sha256=5ScFSTA-bvhCesj3U9Mnmi6Law6N1fmh5UKyh58L3u8,51
58
+ fabricatio/__init__.py,sha256=Rmvq2VgdS2u68vnOi2i5RbeWbAwrJDbk8D8D883PJWE,1022
59
+ fabricatio/rust.cp312-win_amd64.pyd,sha256=xUwZMRAPz2GU49yV3Pr699asBm3rRzKVZSwDYaSIpY4,2195456
60
+ fabricatio-0.2.9.data/scripts/tdown.exe,sha256=AQ5jjbEMIxFkXHn5P-SeeXWUjKYhQPb6kVH6w9M4Qk8,3365376
61
+ fabricatio-0.2.9.dist-info/RECORD,,
Binary file
@@ -1,53 +0,0 @@
1
- fabricatio-0.2.8.dev3.dist-info/METADATA,sha256=dd-agw0ROR-UiBU9QvouJoQ2GCWKGev24EU51ddF1kc,5288
2
- fabricatio-0.2.8.dev3.dist-info/WHEEL,sha256=jABKVkLC9kJr8mi_er5jOqpiQUjARSLXDUIIxDqsS50,96
3
- fabricatio-0.2.8.dev3.dist-info/licenses/LICENSE,sha256=do7J7EiCGbq0QPbMAL_FqLYufXpHnCnXBOuqVPwSV8Y,1088
4
- fabricatio/actions/article.py,sha256=cvUoP6a1iQklOmwPeBskJE6L5NdmF99rQEVvXOV-uR0,13733
5
- fabricatio/actions/article_rag.py,sha256=-nFpxn2Qg1MQE6yS97P_wnSrGxJWQWlz05OX3Cdr4XE,3852
6
- fabricatio/actions/output.py,sha256=-FfTzXEHIb_zOT-j4T4b5ND96zHLDEGdjlmmPviIbiM,3754
7
- fabricatio/actions/rag.py,sha256=wb3vt-gS6fDHYJ57Yfu_OR0kpewT9vMqwtXsqXd42Kg,2735
8
- fabricatio/capabilities/advanced_judge.py,sha256=selB0Gwf1F4gGJlwBiRo6gI4KOUROgh3WnzO3mZFEls,706
9
- fabricatio/capabilities/check.py,sha256=XiA03x2lGcCzpTVICOHs-e7qzNODQwBwtjDxU8ucgdM,3915
10
- fabricatio/capabilities/correct.py,sha256=55Zk1AzeQfoD-8k58VruGUxAMQR7q68ffGniCu6aogM,7282
11
- fabricatio/capabilities/propose.py,sha256=hkBeSlmcTdfYWT-ph6nlbtHXBozi_JXqXlWcnBy3W78,2007
12
- fabricatio/capabilities/rag.py,sha256=7xDxDEvhlmb7Y-mEquSgvlVIYpHsM2YFxA9LjRpVajo,17720
13
- fabricatio/capabilities/rating.py,sha256=_PCJUeNA_1hwcP37r1GsWfHt6Gpwf8TuaAlKajUiyK8,14693
14
- fabricatio/capabilities/review.py,sha256=1MGyJudPxHVOQod_GYKJ7NyB3jOWuwZhqBP30hAZ5Z4,5061
15
- fabricatio/capabilities/task.py,sha256=JG9kD2n86FvZQIjqZq-aqw8j9jpuuDpEDKTJCB6HzX4,4416
16
- fabricatio/config.py,sha256=-K3_PXAnwEDRu6OvMwbghZWeZzHKWyswWHfBeRi7cDk,17066
17
- fabricatio/core.py,sha256=VQ_JKgUGIy2gZ8xsTBZCdr_IP7wC5aPg0_bsOmjQ588,6458
18
- fabricatio/decorators.py,sha256=C0Gi7wcXC-0sWITqsSv3JdBGcgVJOlRvOt0FfO0aUsA,7554
19
- fabricatio/fs/curd.py,sha256=p8y0LGKgVDk-CWOlm37E6wg7RK6RCD6denKo-VsW28c,4763
20
- fabricatio/fs/readers.py,sha256=EZKN_AZdrp8DggJECP53QHw3uHeSDf-AwCAA_V7fNKU,1202
21
- fabricatio/fs/__init__.py,sha256=PCf0s_9KDjVfNw7AfPoJzGt3jMq4gJOfbcT4pb0D0ZY,588
22
- fabricatio/journal.py,sha256=stnEP88aUBA_GmU9gfTF2EZI8FS2OyMLGaMSTgK4QgA,476
23
- fabricatio/models/action.py,sha256=N5_j7u1sd-EzuQACwPAJNUWgg328xenJ-DfZ4DOkh_s,9132
24
- fabricatio/models/events.py,sha256=QvlnS8FEELg6KNabcJMeh2GV_y0ZBzKOPphcteKYWYU,4183
25
- fabricatio/models/extra/advanced_judge.py,sha256=tmCD7mnPlpuykOxvXxWEk3bKzC7mUNSoOwSquT6fF7E,937
26
- fabricatio/models/extra/article_base.py,sha256=mpetbUlZ334YAd46sqd-pBaoelozIg0XJgPWHbSdZ6k,17531
27
- fabricatio/models/extra/article_essence.py,sha256=xd6j-PDqjhrMjgUmyfk6HqkyMLu-sS9feUo0sZ3QABY,2825
28
- fabricatio/models/extra/article_main.py,sha256=OYOnv09n8hB8ChtCSXO9V18tt3ouoSWnG_0MsRkRzJk,8206
29
- fabricatio/models/extra/article_outline.py,sha256=jFbVgiwlo7rnwCGS6ToVgeMUOoRe99Edgbx95THR6z8,1450
30
- fabricatio/models/extra/article_proposal.py,sha256=L2kPvH1XCCQSNcI1KQU3ULGq7C24Y88ssugX43LgbsE,2043
31
- fabricatio/models/extra/problem.py,sha256=CX93lMFl-UQDCO3JvD4nCMllXId_FlPwGiLpxOyO5Dc,4502
32
- fabricatio/models/extra/rule.py,sha256=OIyn_r1lwLa-lhFsl--PQHqY_Qi2LIaT24zQSBazf38,781
33
- fabricatio/models/generic.py,sha256=yHcYyM6NhK3tJCpPKG0lzb58y3KI3W8VtVH49FAynU0,19360
34
- fabricatio/models/kwargs_types.py,sha256=chJ-rHaeBVRUPuORHuGR3DdNxxTUrotz0eflPEh4l4w,5474
35
- fabricatio/models/role.py,sha256=-CRcj5_M3_ciLPzwiNn92grBmwoSLQ-n4koVZiCNTBM,2953
36
- fabricatio/models/task.py,sha256=8NaR7ojQWyM740EDTqt9stwHKdrD6axCRpLKo0QzS-I,10492
37
- fabricatio/models/tool.py,sha256=kD0eB7OxO9geZOxO6JIKvCBeG-KOpRAkfRZqK_WGfW4,7105
38
- fabricatio/models/usages.py,sha256=HuU9X_8o6-UilHEy1LlszVVs36OMRKTDL07YstMFk5I,31808
39
- fabricatio/models/utils.py,sha256=Ac5g-8ic6q_w7dhNuh-iiofpL1sqOACxbjPPTljP2LY,4417
40
- fabricatio/parser.py,sha256=9Jzw-yV6uKbFvf6sPna-XHdziVGVBZWvPctgX_6ODL8,6251
41
- fabricatio/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
- fabricatio/toolboxes/arithmetic.py,sha256=WLqhY-Pikv11Y_0SGajwZx3WhsLNpHKf9drzAqOf_nY,1369
43
- fabricatio/toolboxes/fs.py,sha256=l4L1CVxJmjw9Ld2XUpIlWfV0_Fu_2Og6d3E13I-S4aE,736
44
- fabricatio/toolboxes/__init__.py,sha256=KBJi5OG_pExscdlM7Bnt_UF43j4I3Lv6G71kPVu4KQU,395
45
- fabricatio/utils.py,sha256=QJR00IuclL2nNTSfpTNBRYJmNjc_DNXGtrYWjatWpq8,1681
46
- fabricatio/workflows/articles.py,sha256=G5HGRr-DHuYuEcfhFdFAuDvTTJ9aSU_UQ2yYXEjTMtM,1047
47
- fabricatio/workflows/rag.py,sha256=-YYp2tlE9Vtfgpg6ROpu6QVO8j8yVSPa6yDzlN3qVxs,520
48
- fabricatio/_rust.pyi,sha256=_N8Jw1DMOFAaoibSQolxkKZ07nCfJao7Z9qkojHtLy0,5104
49
- fabricatio/_rust_instances.py,sha256=2GwF8aVfYNemRI2feBzH1CZfBGno-XJJE5imJokGEYw,314
50
- fabricatio/__init__.py,sha256=SzBYsRhZeL77jLtfJEjmoHOSwHwUGyvMATX6xfndLDM,1135
51
- fabricatio/_rust.cp312-win_amd64.pyd,sha256=655GgiDLplHhewnAbEen77GKKxhllgjljHPx2q0cEps,1888256
52
- fabricatio-0.2.8.dev3.data/scripts/tdown.exe,sha256=giKHqYYYtXEQg7gdrGBRA93R0HkoKPUoFqdyFKP9ZQM,3402752
53
- fabricatio-0.2.8.dev3.dist-info/RECORD,,