fabricatio 0.2.13.dev1__cp312-cp312-manylinux_2_34_x86_64.whl → 0.2.13.dev2__cp312-cp312-manylinux_2_34_x86_64.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.
- fabricatio/actions/article_rag.py +19 -58
- fabricatio/capabilities/advanced_rag.py +5 -1
- fabricatio/capabilities/rag.py +7 -1
- fabricatio/models/adv_kwargs_types.py +1 -0
- fabricatio/models/extra/aricle_rag.py +26 -11
- fabricatio/models/extra/article_main.py +1 -0
- fabricatio/models/extra/article_outline.py +1 -3
- fabricatio/rust.cpython-312-x86_64-linux-gnu.so +0 -0
- fabricatio/utils.py +2 -2
- fabricatio-0.2.13.dev2.data/scripts/tdown +0 -0
- {fabricatio-0.2.13.dev1.data → fabricatio-0.2.13.dev2.data}/scripts/ttm +0 -0
- {fabricatio-0.2.13.dev1.dist-info → fabricatio-0.2.13.dev2.dist-info}/METADATA +1 -1
- {fabricatio-0.2.13.dev1.dist-info → fabricatio-0.2.13.dev2.dist-info}/RECORD +15 -15
- fabricatio-0.2.13.dev1.data/scripts/tdown +0 -0
- {fabricatio-0.2.13.dev1.dist-info → fabricatio-0.2.13.dev2.dist-info}/WHEEL +0 -0
- {fabricatio-0.2.13.dev1.dist-info → fabricatio-0.2.13.dev2.dist-info}/licenses/LICENSE +0 -0
@@ -21,17 +21,17 @@ from fabricatio.models.extra.article_outline import ArticleOutline
|
|
21
21
|
from fabricatio.models.extra.rule import RuleSet
|
22
22
|
from fabricatio.models.kwargs_types import ChooseKwargs, LLMKwargs
|
23
23
|
from fabricatio.rust import convert_to_block_formula, convert_to_inline_formula
|
24
|
-
from fabricatio.utils import
|
24
|
+
from fabricatio.utils import ok
|
25
25
|
|
26
26
|
TYPST_CITE_USAGE = (
|
27
|
-
"citation number is REQUIRED to cite any reference
|
28
|
-
"Everything is build upon the typst language, which is similar to latex, \n"
|
27
|
+
"citation number is REQUIRED to cite any reference!'\n"
|
29
28
|
"Legal citing syntax examples(seperated by |): [[1]]|[[1,2]]|[[1-3]]|[[12,13-15]]|[[1-3,5-7]]\n"
|
30
29
|
"Illegal citing syntax examples(seperated by |): [[1],[2],[3]]|[[1],[1-2]]\n"
|
30
|
+
"You SHALL not cite a single reference more than once!"
|
31
31
|
"Those reference mark shall not be omitted during the extraction\n"
|
32
32
|
"It's recommended to cite multiple references that supports your conclusion at a time.\n"
|
33
33
|
"Wrap inline expression with '\\(' and '\\)',like '\\(>5m\\)' '\\(89%\\)', and wrap block equation with '\\[' and '\\]'.\n"
|
34
|
-
"In addition to that, you can add a label outside the block equation which can be used as a cross reference identifier, the label is a string wrapped in `<` and `>` like `<energy-release-rate-equation>`.Note that the label string should be a summarizing title for the equation being labeled.\n"
|
34
|
+
"In addition to that, you can add a label outside the block equation which can be used as a cross reference identifier, the label is a string wrapped in `<` and `>` like `<energy-release-rate-equation>`.Note that the label string should be a summarizing title for the equation being labeled and should never be written within the formula block.\n"
|
35
35
|
"you can refer to that label by using the syntax with prefix of `@eqt:`, which indicate that this notation is citing a label from the equations. For example ' @eqt:energy-release-rate-equation ' DO remember that the notation shall have both suffixed and prefixed space char which enable the compiler to distinguish the notation from the plaintext."
|
36
36
|
"Below is two usage example:\n"
|
37
37
|
"```typst\n"
|
@@ -47,6 +47,7 @@ TYPST_CITE_USAGE = (
|
|
47
47
|
class WriteArticleContentRAG(Action, RAG, Extract):
|
48
48
|
"""Write an article based on the provided outline."""
|
49
49
|
|
50
|
+
ctx_override: ClassVar[bool] = True
|
50
51
|
search_increment_multiplier: float = 1.6
|
51
52
|
"""The increment multiplier of the search increment."""
|
52
53
|
ref_limit: int = 35
|
@@ -63,6 +64,7 @@ class WriteArticleContentRAG(Action, RAG, Extract):
|
|
63
64
|
"""The number of results to be returned per query."""
|
64
65
|
req: str = TYPST_CITE_USAGE
|
65
66
|
"""The req of the write article content."""
|
67
|
+
tei_endpoint: Optional[str] = None
|
66
68
|
|
67
69
|
async def _execute(
|
68
70
|
self,
|
@@ -108,16 +110,7 @@ class WriteArticleContentRAG(Action, RAG, Extract):
|
|
108
110
|
|
109
111
|
while not await confirm("Accept this version and continue?").ask_async():
|
110
112
|
if inst := await text("Search for more refs for additional spec.").ask_async():
|
111
|
-
await self.search_database(
|
112
|
-
article,
|
113
|
-
article_outline,
|
114
|
-
chap,
|
115
|
-
sec,
|
116
|
-
subsec,
|
117
|
-
cm,
|
118
|
-
supervisor=True,
|
119
|
-
extra_instruction=inst,
|
120
|
-
)
|
113
|
+
await self.search_database(article, article_outline, chap, sec, subsec, cm, extra_instruction=inst)
|
121
114
|
|
122
115
|
if instruction := await text("Enter the instructions to improve").ask_async():
|
123
116
|
raw = await self.write_raw(article, article_outline, chap, sec, subsec, cm, instruction)
|
@@ -200,7 +193,6 @@ class WriteArticleContentRAG(Action, RAG, Extract):
|
|
200
193
|
subsec: ArticleSubsection,
|
201
194
|
cm: CitationManager,
|
202
195
|
extra_instruction: str = "",
|
203
|
-
supervisor: bool = False,
|
204
196
|
) -> None:
|
205
197
|
"""Search database for related references."""
|
206
198
|
search_req = (
|
@@ -208,50 +200,19 @@ class WriteArticleContentRAG(Action, RAG, Extract):
|
|
208
200
|
f"More specifically, i m witting the Chapter `{chap.title}` >> Section `{sec.title}` >> Subsection `{subsec.title}`.\n"
|
209
201
|
f"I need to search related references to build up the content of the subsec mentioned above, which is `{subsec.title}`.\n"
|
210
202
|
f"provide 10~16 queries as possible, to get best result!\n"
|
211
|
-
f"You should provide both English version and chinese version of the refined queries!\n{extra_instruction}
|
212
|
-
)
|
213
|
-
|
214
|
-
ref_q = ok(
|
215
|
-
await self.arefined_query(
|
216
|
-
search_req,
|
217
|
-
**self.query_model,
|
218
|
-
),
|
219
|
-
"Failed to refine query.",
|
220
|
-
)
|
221
|
-
|
222
|
-
if supervisor:
|
223
|
-
ref_q = await ask_retain(ref_q)
|
224
|
-
ret = await self.aretrieve(
|
225
|
-
ref_q,
|
226
|
-
ArticleChunk,
|
227
|
-
max_accepted=self.ref_limit,
|
228
|
-
result_per_query=self.result_per_query,
|
229
|
-
similarity_threshold=self.threshold,
|
230
|
-
)
|
231
|
-
|
232
|
-
cm.add_chunks(ok(ret))
|
233
|
-
ref_q = await self.arefined_query(
|
234
|
-
f"{cm.as_prompt()}\n\nAbove is the retrieved references in the first RAG, now we need to perform the second RAG.\n\n{search_req}",
|
235
|
-
**self.query_model,
|
203
|
+
f"You should provide both English version and chinese version of the refined queries!\n{extra_instruction}"
|
236
204
|
)
|
237
205
|
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
max_accepted=int(self.ref_limit * self.search_increment_multiplier),
|
248
|
-
result_per_query=int(self.result_per_query * self.search_increment_multiplier),
|
249
|
-
similarity_threshold=self.threshold,
|
206
|
+
await self.clued_search(
|
207
|
+
search_req,
|
208
|
+
cm,
|
209
|
+
refinery_kwargs=self.ref_q_model,
|
210
|
+
expand_multiplier=self.search_increment_multiplier,
|
211
|
+
base_accepted=self.ref_limit,
|
212
|
+
result_per_query=self.ref_per_q,
|
213
|
+
similarity_threshold=self.similarity_threshold,
|
214
|
+
tei_endpoint=self.tei_endpoint,
|
250
215
|
)
|
251
|
-
if ret is None:
|
252
|
-
logger.warning("Second retrieve is None, skipping.")
|
253
|
-
return
|
254
|
-
cm.add_chunks(ret)
|
255
216
|
|
256
217
|
|
257
218
|
class ArticleConsultRAG(Action, AdvancedRAG):
|
@@ -261,9 +222,9 @@ class ArticleConsultRAG(Action, AdvancedRAG):
|
|
261
222
|
output_key: str = "consult_count"
|
262
223
|
search_increment_multiplier: float = 1.6
|
263
224
|
"""The multiplier to increase the limit of references to retrieve per query."""
|
264
|
-
ref_limit: int =
|
225
|
+
ref_limit: int = 26
|
265
226
|
"""The final limit of references."""
|
266
|
-
ref_per_q: int =
|
227
|
+
ref_per_q: int = 13
|
267
228
|
"""The limit of references to retrieve per query."""
|
268
229
|
similarity_threshold: float = 0.62
|
269
230
|
"""The similarity threshold of references to retrieve."""
|
@@ -7,6 +7,7 @@ from fabricatio.journal import logger
|
|
7
7
|
from fabricatio.models.adv_kwargs_types import FetchKwargs
|
8
8
|
from fabricatio.models.extra.aricle_rag import ArticleChunk, CitationManager
|
9
9
|
from fabricatio.models.kwargs_types import ChooseKwargs
|
10
|
+
from fabricatio.utils import fallback_kwargs
|
10
11
|
|
11
12
|
|
12
13
|
class AdvancedRAG(RAG):
|
@@ -40,10 +41,13 @@ class AdvancedRAG(RAG):
|
|
40
41
|
f"\n\n{requirement}",
|
41
42
|
**refinery_kwargs,
|
42
43
|
)
|
44
|
+
|
43
45
|
if ref_q is None:
|
44
46
|
logger.error(f"At round [{i}/{max_round}] search, failed to refine the query, exit.")
|
45
47
|
return cm
|
46
|
-
refs = await self.aretrieve(
|
48
|
+
refs = await self.aretrieve(
|
49
|
+
ref_q, ArticleChunk, base_accepted, **fallback_kwargs(kwargs, filter_expr=cm.as_milvus_filter_expr())
|
50
|
+
)
|
47
51
|
|
48
52
|
if (max_capacity := max_capacity - len(refs)) < 0:
|
49
53
|
cm.add_chunks(refs[0:max_capacity])
|
fabricatio/capabilities/rag.py
CHANGED
@@ -150,6 +150,7 @@ class RAG(EmbeddingUsage):
|
|
150
150
|
result_per_query: int = 10,
|
151
151
|
tei_endpoint: Optional[str] = None,
|
152
152
|
reranker_threshold: float = 0.7,
|
153
|
+
filter_expr: str = "",
|
153
154
|
) -> List[D]:
|
154
155
|
"""Asynchronously fetches documents from a Milvus database based on input vectors.
|
155
156
|
|
@@ -162,6 +163,7 @@ class RAG(EmbeddingUsage):
|
|
162
163
|
result_per_query (int): The maximum number of results to return per query. Defaults to 10.
|
163
164
|
tei_endpoint (str): the endpoint of the TEI api.
|
164
165
|
reranker_threshold (float): The threshold used to filtered low relativity document.
|
166
|
+
filter_expr (str): filter_expression parsed into pymilvus search.
|
165
167
|
|
166
168
|
Returns:
|
167
169
|
List[D]: A list of document objects created from the fetched data.
|
@@ -172,6 +174,7 @@ class RAG(EmbeddingUsage):
|
|
172
174
|
await self.vectorize(query),
|
173
175
|
search_params={"radius": similarity_threshold},
|
174
176
|
output_fields=list(document_model.model_fields),
|
177
|
+
filter=filter_expr,
|
175
178
|
limit=result_per_query,
|
176
179
|
)
|
177
180
|
if tei_endpoint is not None:
|
@@ -184,8 +187,11 @@ class RAG(EmbeddingUsage):
|
|
184
187
|
|
185
188
|
for q, g in zip(query, search_results, strict=True):
|
186
189
|
models = document_model.from_sequence([res["entity"] for res in g if res["id"] not in retrieved_id])
|
190
|
+
logger.debug(f"Retrived {len(g)} raw document, filtered out {len(models)}.")
|
187
191
|
retrieved_id.update(res["id"] for res in g)
|
188
|
-
|
192
|
+
if not models:
|
193
|
+
continue
|
194
|
+
rank_scores = await reranker.arerank(q, [m.prepare_vectorization() for m in models], truncate=True)
|
189
195
|
raw_result.extend(
|
190
196
|
(models[s["index"]], s["score"]) for s in rank_scores if s["score"] > reranker_threshold
|
191
197
|
)
|
@@ -1,6 +1,7 @@
|
|
1
1
|
"""A Module containing the article rag models."""
|
2
2
|
|
3
3
|
import re
|
4
|
+
from itertools import groupby
|
4
5
|
from pathlib import Path
|
5
6
|
from typing import ClassVar, Dict, List, Optional, Self, Unpack
|
6
7
|
|
@@ -10,12 +11,13 @@ from fabricatio.models.extra.rag import MilvusDataBase
|
|
10
11
|
from fabricatio.models.generic import AsPrompt
|
11
12
|
from fabricatio.models.kwargs_types import ChunkKwargs
|
12
13
|
from fabricatio.rust import BibManager, blake3_hash, split_into_chunks
|
13
|
-
from fabricatio.utils import ok
|
14
|
+
from fabricatio.utils import ok, wrapp_in_block
|
15
|
+
from more_itertools.more import first
|
14
16
|
from more_itertools.recipes import flatten, unique
|
15
17
|
from pydantic import Field
|
16
18
|
|
17
19
|
|
18
|
-
class ArticleChunk(MilvusDataBase
|
20
|
+
class ArticleChunk(MilvusDataBase):
|
19
21
|
"""The chunk of an article."""
|
20
22
|
|
21
23
|
etc_word: ClassVar[str] = "等"
|
@@ -51,10 +53,9 @@ class ArticleChunk(MilvusDataBase, AsPrompt):
|
|
51
53
|
bibtex_cite_key: str
|
52
54
|
"""The bibtex cite key of the article"""
|
53
55
|
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
}
|
56
|
+
@property
|
57
|
+
def reference_header(self) -> str:
|
58
|
+
return f"[[{ok(self._cite_number, 'You need to update cite number first.')}]] reference `{self.article_title}` from {self.as_auther_seq()}"
|
58
59
|
|
59
60
|
@property
|
60
61
|
def cite_number(self) -> int:
|
@@ -204,13 +205,23 @@ class CitationManager(AsPrompt):
|
|
204
205
|
|
205
206
|
def set_cite_number_all(self) -> Self:
|
206
207
|
"""Set citation numbers for all article chunks."""
|
207
|
-
|
208
|
-
|
208
|
+
number_mapping = {a.bibtex_cite_key: 0 for a in self.article_chunks}
|
209
|
+
|
210
|
+
for i, k in enumerate(number_mapping.keys()):
|
211
|
+
number_mapping[k] = i
|
212
|
+
|
213
|
+
for a in self.article_chunks:
|
214
|
+
a.update_cite_number(number_mapping[a.bibtex_cite_key])
|
209
215
|
return self
|
210
216
|
|
211
217
|
def _as_prompt_inner(self) -> Dict[str, str]:
|
212
218
|
"""Generate prompt inner representation."""
|
213
|
-
|
219
|
+
seg = []
|
220
|
+
for k, g in groupby(self.article_chunks, key=lambda a: a.bibtex_cite_key):
|
221
|
+
g = list(g)
|
222
|
+
logger.debug(f"Group [{k}]: {len(g)}")
|
223
|
+
seg.append(wrapp_in_block("\n\n".join(a.chunk for a in g), first(g).reference_header))
|
224
|
+
return {"References": "\n".join(seg)}
|
214
225
|
|
215
226
|
def apply(self, string: str) -> str:
|
216
227
|
"""Apply citation replacements to the input string."""
|
@@ -261,5 +272,9 @@ class CitationManager(AsPrompt):
|
|
261
272
|
|
262
273
|
def unpack_cite_seq(self, citation_seq: List[int]) -> str:
|
263
274
|
"""Unpack citation sequence into a string."""
|
264
|
-
chunk_seq =
|
265
|
-
return "".join(a.as_typst_cite() for a in chunk_seq)
|
275
|
+
chunk_seq = {a.bibtex_cite_key: a for a in self.article_chunks if a.cite_number in citation_seq}
|
276
|
+
return "".join(a.as_typst_cite() for a in chunk_seq.values())
|
277
|
+
|
278
|
+
def as_milvus_filter_expr(self, blacklist: bool = True) -> str:
|
279
|
+
if blacklist:
|
280
|
+
return " and ".join(f'bibtex_cite_key != "{a.bibtex_cite_key}"' for a in self.article_chunks)
|
@@ -19,6 +19,7 @@ class ArticleSubsectionOutline(SubSectionBase):
|
|
19
19
|
|
20
20
|
class ArticleSectionOutline(SectionBase[ArticleSubsectionOutline]):
|
21
21
|
"""A slightly more detailed research component specification for academic paper generation, Must contain subsections."""
|
22
|
+
|
22
23
|
@classmethod
|
23
24
|
def from_typst_code(cls, title: str, body: str, **kwargs) -> Self:
|
24
25
|
"""Parse the given Typst code into an ArticleSectionOutline instance."""
|
@@ -32,7 +33,6 @@ class ArticleSectionOutline(SectionBase[ArticleSubsectionOutline]):
|
|
32
33
|
)
|
33
34
|
|
34
35
|
|
35
|
-
|
36
36
|
class ArticleChapterOutline(ChapterBase[ArticleSectionOutline]):
|
37
37
|
"""Macro-structural unit implementing standard academic paper organization. Must contain sections."""
|
38
38
|
|
@@ -46,11 +46,9 @@ class ArticleChapterOutline(ChapterBase[ArticleSectionOutline]):
|
|
46
46
|
ArticleSectionOutline.from_typst_code(*pack)
|
47
47
|
for pack in extract_sections(body, level=2, section_char="=")
|
48
48
|
],
|
49
|
-
|
50
49
|
)
|
51
50
|
|
52
51
|
|
53
|
-
|
54
52
|
class ArticleOutline(
|
55
53
|
WithRef[ArticleProposal],
|
56
54
|
PersistentAble,
|
Binary file
|
fabricatio/utils.py
CHANGED
@@ -182,7 +182,7 @@ class RerankerAPI:
|
|
182
182
|
response = requests.post(f"{self.base_url}/rerank", json=payload)
|
183
183
|
|
184
184
|
# Handle non-200 status codes
|
185
|
-
if response.ok:
|
185
|
+
if not response.ok:
|
186
186
|
error_data = None
|
187
187
|
if "application/json" in response.headers.get("Content-Type", ""):
|
188
188
|
error_data = response.json()
|
@@ -239,7 +239,7 @@ class RerankerAPI:
|
|
239
239
|
session.post(f"{self.base_url}/rerank", json=payload) as response,
|
240
240
|
):
|
241
241
|
# Handle non-200 status codes
|
242
|
-
if response.ok:
|
242
|
+
if not response.ok:
|
243
243
|
if "application/json" in response.headers.get("Content-Type", ""):
|
244
244
|
error_data = await response.json()
|
245
245
|
else:
|
Binary file
|
Binary file
|
@@ -1,23 +1,23 @@
|
|
1
|
-
fabricatio-0.2.13.
|
2
|
-
fabricatio-0.2.13.
|
3
|
-
fabricatio-0.2.13.
|
1
|
+
fabricatio-0.2.13.dev2.dist-info/METADATA,sha256=ZC1JUXaHzE8UMKKoAioPgZAQGm1ycdsMyIckeACY7GA,5169
|
2
|
+
fabricatio-0.2.13.dev2.dist-info/WHEEL,sha256=7FgAcpQES0h1xhfN9Ugve9FTUilU6sRAr1WJ5ph2cuw,108
|
3
|
+
fabricatio-0.2.13.dev2.dist-info/licenses/LICENSE,sha256=yDZaTLnOi03bi3Dk6f5IjhLUc5old2yOsihHWU0z-i0,1067
|
4
4
|
fabricatio/capabilities/check.py,sha256=TLtkUIR6tX73qR_V5TkXpdmplrmqFt4dZj32PBy81H0,8409
|
5
5
|
fabricatio/capabilities/propose.py,sha256=vOJvmmnMBHUQB6N1AmZNFw42jf7Bl2mBRNlBK15TpNI,1942
|
6
6
|
fabricatio/capabilities/correct.py,sha256=Et3Ud-oLZlwTVSy2XyT5UX2shT_OJ9j4HWP9b5Hntvk,10192
|
7
7
|
fabricatio/capabilities/rating.py,sha256=nolk5iBSiOzsOqqKIh1c4YSdRLwcllo9vBHuwp1dV74,17432
|
8
8
|
fabricatio/capabilities/censor.py,sha256=j6vyjKpR1CfLzC-XrOZSZePjJz3jsoM104gqqsWwi1Q,4615
|
9
|
-
fabricatio/capabilities/advanced_rag.py,sha256=
|
9
|
+
fabricatio/capabilities/advanced_rag.py,sha256=ZCrzKMvL4PldEuXyQh_prhJifS98RWsxM43exfGq1w8,2453
|
10
10
|
fabricatio/capabilities/task.py,sha256=_BAQonNy5JH3JxhLmPGfn0nDvn_ENKXyOdql8EVXRLE,4362
|
11
|
-
fabricatio/capabilities/rag.py,sha256=
|
11
|
+
fabricatio/capabilities/rag.py,sha256=86ooIq4Oy2lYbFRBXH7q76OLF7lVSWXu5Apyj1Bx07E,10794
|
12
12
|
fabricatio/capabilities/extract.py,sha256=b4_Tuc9O6Pe71y4Tj-JHMb4simdhduVR-rcfD9yW8RA,2425
|
13
13
|
fabricatio/capabilities/advanced_judge.py,sha256=bvb8fYoiKoGlBwMZVMflVE9R2MoS1VtmZAo65jMJFew,683
|
14
14
|
fabricatio/capabilities/review.py,sha256=EPL8IlxSKO0XStBkXdW7FJMbPztDQMv9w7tHgu6r3PM,4948
|
15
15
|
fabricatio/capabilities/__init__.py,sha256=skaJ43CqAQaZMH-mCRzF4Fps3x99P2SwJ8vSM9pInX8,56
|
16
16
|
fabricatio/parser.py,sha256=rMXd9Lo5TjxUkI0rocYigF9d1kC0rSySenuMW8uqXm8,6483
|
17
17
|
fabricatio/models/action.py,sha256=_8iwX7BJWUOUKzM0Zn6B7jSrjRPJgzr88vTiYVHxRgE,10330
|
18
|
-
fabricatio/models/extra/article_outline.py,sha256=
|
18
|
+
fabricatio/models/extra/article_outline.py,sha256=lTPxn9MyzQwlaEXMdAQSyqcEnVTlx882cV6wI2JfhhQ,2713
|
19
19
|
fabricatio/models/extra/article_essence.py,sha256=zUfZ2_bX3h__RaVPwJlxQ-tkFyfSV8SdX8DsmFX6v_w,2649
|
20
|
-
fabricatio/models/extra/article_main.py,sha256=
|
20
|
+
fabricatio/models/extra/article_main.py,sha256=RT4GRywxbR_ExOpYufe8j320EWT4nbnd7ASfcWIK-l0,10928
|
21
21
|
fabricatio/models/extra/article_proposal.py,sha256=4G2qLkMxtK54G1ANgPW0G3w4Pahxgk2lhGPU5KMxuzw,1818
|
22
22
|
fabricatio/models/extra/article_base.py,sha256=Kyfuvv9S6jTQafCdq1_DhzsimsK72iViuB1GqrihQQY,15298
|
23
23
|
fabricatio/models/extra/rag.py,sha256=RWv_YJhDX6UL4t3sRtQt-LYMtxN-K-t931nmyiJXkKM,3857
|
@@ -25,12 +25,12 @@ fabricatio/models/extra/rule.py,sha256=b756_XmWeDoJ1qOFEGy6ZfP8O7rBjOZs4XvfZvWKX
|
|
25
25
|
fabricatio/models/extra/problem.py,sha256=1Sd8hsThQK6pXMXhErRhP1ft58z4PvqeB8AV8VcXiaI,7051
|
26
26
|
fabricatio/models/extra/patches.py,sha256=_ghmnlvTZQq7UJyaH77mTZE9abjvxRJ2mgWHUbezUls,977
|
27
27
|
fabricatio/models/extra/advanced_judge.py,sha256=CKPP4Lseb_Ey8Y7i2V9HJfB-mZgCknFdqq7Zo41o6s4,1060
|
28
|
-
fabricatio/models/extra/aricle_rag.py,sha256
|
28
|
+
fabricatio/models/extra/aricle_rag.py,sha256=RkA1Q0Mh81c4bUn_b8EAmogvsna_doI7j3yah64fmz8,11405
|
29
29
|
fabricatio/models/extra/__init__.py,sha256=0R9eZsCNu6OV-Xtf15H7FrqhfHTFBFf3fBrcd7ChsJ0,53
|
30
30
|
fabricatio/models/usages.py,sha256=FVRhh_AulXlJF9uUmJzKEdiLz-di0rAiaQm4snYEid0,32571
|
31
31
|
fabricatio/models/events.py,sha256=-9Xy8kcZug1tYwxmt3GpXtCkNfZUMSFvAH5HdZoRJTI,4030
|
32
32
|
fabricatio/models/generic.py,sha256=oUsYgAx2LmA35ePlavGvT-UjUqbL-a-4-5GuPPUAtvo,30442
|
33
|
-
fabricatio/models/adv_kwargs_types.py,sha256=
|
33
|
+
fabricatio/models/adv_kwargs_types.py,sha256=nmj1D0GVosZxKcdiw-B5vJB04Whr5zh30ZBJntSZUpY,2034
|
34
34
|
fabricatio/models/role.py,sha256=5SJ1Vm6H3FwOVEk5Z-4GBJWABI3OKAKwkz5t170osi8,2855
|
35
35
|
fabricatio/models/task.py,sha256=O4v5T3HuzYblGeeqNzTDOCbulhGovR6olV2ojD0FJvk,10785
|
36
36
|
fabricatio/models/kwargs_types.py,sha256=ts2P7dWAiy3knWvLVzJMVIl5TNrODbaoA7YhIP6CuD8,4826
|
@@ -44,7 +44,7 @@ fabricatio/actions/article.py,sha256=7N2TJARtN7iBWagmrtTI7Zqcp7U_8yxzKP6eB0t4PiM
|
|
44
44
|
fabricatio/actions/rules.py,sha256=07ILsiwR250AUcKLPHTUPpWD_mPhPCfWKSkEAKcPv3A,3557
|
45
45
|
fabricatio/actions/output.py,sha256=lTvMgXzY-fwA_kNrivdFZkk3kT8DMpjBSIWLyav2B1k,8089
|
46
46
|
fabricatio/actions/rag.py,sha256=-bA7KkZEFfWEanAPHzYwRHG7zRlTZcNDI7HL3n-lDuE,3496
|
47
|
-
fabricatio/actions/article_rag.py,sha256=
|
47
|
+
fabricatio/actions/article_rag.py,sha256=CQv8HmsNYnOaUxDnxqmlwWSMhDJ_6GCDi7xO8LJiyQc,17401
|
48
48
|
fabricatio/actions/fs.py,sha256=nlTmk-tYDW158nz_fzlsNfuYJwj7j4BHn_MFY5hxdqs,934
|
49
49
|
fabricatio/actions/__init__.py,sha256=ZMa1LeM5BNeqp-J-D32W-f5bD53-kdXGyt0zuueJofM,47
|
50
50
|
fabricatio/fs/curd.py,sha256=x7Je9V1ydv-BdZTjlLc3syZ6380gkOhpfrfnhXstisg,4624
|
@@ -58,10 +58,10 @@ fabricatio/toolboxes/arithmetic.py,sha256=sSTPkKI6-mb278DwQKFO9jKyzc9kCx45xNH7V6
|
|
58
58
|
fabricatio/toolboxes/fs.py,sha256=OQMdeokYxSNVrCZJAweJ0cYiK4k2QuEiNdIbS5IHIV8,705
|
59
59
|
fabricatio/toolboxes/__init__.py,sha256=dYm_Gd8XolSU_h4wnkA09dlaLDK146eeFz0CUgPZ8_c,380
|
60
60
|
fabricatio/rust_instances.py,sha256=i5fIt6XkE8UwUU4JarmPt50AZs8aJW6efaypSLGLl0I,303
|
61
|
-
fabricatio/utils.py,sha256=
|
61
|
+
fabricatio/utils.py,sha256=ocQMezvAiLxV7FyHrPi-H4Wp5xKJymuyntPGpHyOHCc,10044
|
62
62
|
fabricatio/journal.py,sha256=Op0wC-JlZumnAc_aDmYM4ljnSNLoKEEMfcIRbCF69ow,455
|
63
63
|
fabricatio/__init__.py,sha256=OXoMMHJKHEB_vN97_34U4I5QpAKL9xnVQEVcBCvwBCg,986
|
64
|
-
fabricatio/rust.cpython-312-x86_64-linux-gnu.so,sha256=
|
65
|
-
fabricatio-0.2.13.
|
66
|
-
fabricatio-0.2.13.
|
67
|
-
fabricatio-0.2.13.
|
64
|
+
fabricatio/rust.cpython-312-x86_64-linux-gnu.so,sha256=1VRKvut1cRzGJDS1TGRONysDFI76nchHlUrSHV_99v8,4735336
|
65
|
+
fabricatio-0.2.13.dev2.data/scripts/tdown,sha256=4Liv9ixP-750aUzsZzKrvF76ZyJRG3Ay8mKPFdUe-6k,4592872
|
66
|
+
fabricatio-0.2.13.dev2.data/scripts/ttm,sha256=GA53bWxU6I-xNgtBMtulVwlCN5rcKLSrq0ddEK2N2Nc,3921584
|
67
|
+
fabricatio-0.2.13.dev2.dist-info/RECORD,,
|
Binary file
|
File without changes
|
File without changes
|