camel-ai 0.2.37__py3-none-any.whl → 0.2.39__py3-none-any.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.
Potentially problematic release.
This version of camel-ai might be problematic. Click here for more details.
- camel/__init__.py +1 -1
- camel/agents/chat_agent.py +4 -0
- camel/agents/repo_agent.py +2 -2
- camel/benchmarks/apibank.py +1 -1
- camel/benchmarks/apibench.py +1 -1
- camel/configs/__init__.py +3 -0
- camel/configs/modelscope_config.py +59 -0
- camel/datagen/evol_instruct/__init__.py +20 -0
- camel/datagen/evol_instruct/evol_instruct.py +424 -0
- camel/datagen/evol_instruct/scorer.py +166 -0
- camel/datagen/evol_instruct/templates.py +268 -0
- camel/datagen/self_improving_cot.py +1 -1
- camel/datasets/__init__.py +2 -0
- camel/datasets/base_generator.py +22 -9
- camel/datasets/few_shot_generator.py +2 -3
- camel/datasets/self_instruct_generator.py +415 -0
- camel/embeddings/openai_compatible_embedding.py +13 -5
- camel/environments/models.py +10 -4
- camel/environments/single_step.py +181 -41
- camel/interpreters/docker_interpreter.py +2 -2
- camel/interpreters/e2b_interpreter.py +1 -1
- camel/interpreters/internal_python_interpreter.py +1 -1
- camel/interpreters/subprocess_interpreter.py +1 -1
- camel/loaders/__init__.py +2 -2
- camel/loaders/{panda_reader.py → pandas_reader.py} +61 -30
- camel/loaders/unstructured_io.py +2 -1
- camel/memories/blocks/chat_history_block.py +1 -1
- camel/memories/context_creators/score_based.py +198 -67
- camel/models/__init__.py +2 -0
- camel/models/aiml_model.py +9 -3
- camel/models/anthropic_model.py +11 -3
- camel/models/azure_openai_model.py +9 -3
- camel/models/base_audio_model.py +6 -0
- camel/models/base_model.py +4 -0
- camel/models/deepseek_model.py +9 -3
- camel/models/gemini_model.py +9 -3
- camel/models/groq_model.py +9 -3
- camel/models/internlm_model.py +8 -2
- camel/models/model_factory.py +123 -0
- camel/models/modelscope_model.py +208 -0
- camel/models/moonshot_model.py +8 -2
- camel/models/nemotron_model.py +9 -3
- camel/models/nvidia_model.py +9 -3
- camel/models/ollama_model.py +9 -3
- camel/models/openai_audio_models.py +7 -5
- camel/models/openai_compatible_model.py +9 -3
- camel/models/openai_model.py +58 -5
- camel/models/openrouter_model.py +9 -3
- camel/models/qwen_model.py +9 -3
- camel/models/samba_model.py +9 -3
- camel/models/sglang_model.py +11 -4
- camel/models/siliconflow_model.py +8 -2
- camel/models/stub_model.py +2 -1
- camel/models/togetherai_model.py +11 -5
- camel/models/vllm_model.py +10 -4
- camel/models/yi_model.py +9 -3
- camel/models/zhipuai_model.py +11 -5
- camel/retrievers/auto_retriever.py +14 -0
- camel/retrievers/vector_retriever.py +1 -1
- camel/storages/__init__.py +2 -0
- camel/storages/graph_storages/neo4j_graph.py +1 -1
- camel/storages/vectordb_storages/__init__.py +2 -0
- camel/storages/vectordb_storages/base.py +2 -2
- camel/storages/vectordb_storages/milvus.py +2 -2
- camel/storages/vectordb_storages/qdrant.py +2 -2
- camel/storages/vectordb_storages/tidb.py +332 -0
- camel/tasks/task.py +2 -2
- camel/toolkits/__init__.py +9 -1
- camel/toolkits/arxiv_toolkit.py +2 -1
- camel/toolkits/ask_news_toolkit.py +11 -3
- camel/toolkits/audio_analysis_toolkit.py +2 -0
- camel/toolkits/base.py +3 -0
- camel/toolkits/browser_toolkit.py +84 -61
- camel/toolkits/code_execution.py +3 -1
- camel/toolkits/dappier_toolkit.py +2 -1
- camel/toolkits/data_commons_toolkit.py +2 -0
- camel/toolkits/excel_toolkit.py +2 -0
- camel/toolkits/file_write_toolkit.py +2 -0
- camel/toolkits/github_toolkit.py +6 -4
- camel/toolkits/google_scholar_toolkit.py +2 -0
- camel/toolkits/human_toolkit.py +17 -1
- camel/toolkits/image_analysis_toolkit.py +2 -0
- camel/toolkits/linkedin_toolkit.py +2 -1
- camel/toolkits/math_toolkit.py +2 -0
- camel/toolkits/mcp_toolkit.py +42 -52
- camel/toolkits/meshy_toolkit.py +20 -2
- camel/toolkits/networkx_toolkit.py +2 -0
- camel/toolkits/notion_toolkit.py +7 -0
- camel/toolkits/openai_agent_toolkit.py +131 -0
- camel/toolkits/openbb_toolkit.py +2 -1
- camel/toolkits/pubmed_toolkit.py +2 -0
- camel/toolkits/reddit_toolkit.py +2 -1
- camel/toolkits/retrieval_toolkit.py +2 -1
- camel/toolkits/search_toolkit.py +2 -1
- camel/toolkits/searxng_toolkit.py +207 -0
- camel/toolkits/semantic_scholar_toolkit.py +2 -0
- camel/toolkits/slack_toolkit.py +2 -0
- camel/toolkits/stripe_toolkit.py +2 -1
- camel/toolkits/sympy_toolkit.py +2 -0
- camel/toolkits/terminal_toolkit.py +2 -0
- camel/toolkits/thinking_toolkit.py +168 -12
- camel/toolkits/twitter_toolkit.py +2 -1
- camel/toolkits/video_analysis_toolkit.py +2 -1
- camel/toolkits/video_download_toolkit.py +2 -1
- camel/toolkits/weather_toolkit.py +2 -0
- camel/toolkits/whatsapp_toolkit.py +2 -1
- camel/toolkits/zapier_toolkit.py +2 -1
- camel/types/enums.py +66 -0
- camel/types/unified_model_type.py +5 -0
- camel/utils/__init__.py +2 -0
- camel/utils/chunker/code_chunker.py +9 -9
- camel/utils/commons.py +50 -30
- camel/utils/constants.py +2 -2
- camel/utils/mcp.py +79 -0
- camel/verifiers/__init__.py +2 -0
- camel/verifiers/base.py +15 -15
- camel/verifiers/math_verifier.py +182 -0
- camel/verifiers/python_verifier.py +28 -28
- {camel_ai-0.2.37.dist-info → camel_ai-0.2.39.dist-info}/METADATA +54 -4
- {camel_ai-0.2.37.dist-info → camel_ai-0.2.39.dist-info}/RECORD +122 -110
- {camel_ai-0.2.37.dist-info → camel_ai-0.2.39.dist-info}/WHEEL +0 -0
- {camel_ai-0.2.37.dist-info → camel_ai-0.2.39.dist-info}/licenses/LICENSE +0 -0
|
@@ -76,15 +76,19 @@ class PythonVerifier(BaseVerifier):
|
|
|
76
76
|
|
|
77
77
|
async def _setup(self, **kwargs) -> None:
|
|
78
78
|
r"""Set up a virtual environment and install required packages."""
|
|
79
|
-
|
|
80
|
-
if uv or self._is_uv_environment():
|
|
79
|
+
# Check if we're in a uv environment and use uv if available
|
|
80
|
+
if kwargs.get("uv", False) or self._is_uv_environment():
|
|
81
81
|
logger.info("[UV] Detected uv environment. Using uv for setup.")
|
|
82
82
|
self._setup_with_uv()
|
|
83
83
|
return
|
|
84
84
|
|
|
85
85
|
self.venv_path = tempfile.mkdtemp()
|
|
86
86
|
try:
|
|
87
|
-
|
|
87
|
+
# Use system=True to ensure that the virtual environment uses the
|
|
88
|
+
# system Python libraries
|
|
89
|
+
venv.create(
|
|
90
|
+
self.venv_path, with_pip=True, system_site_packages=True
|
|
91
|
+
)
|
|
88
92
|
logger.info(f"Virtual environment created at {self.venv_path}")
|
|
89
93
|
except Exception as e:
|
|
90
94
|
logger.error(f"Failed to create virtual environment: {e}")
|
|
@@ -138,7 +142,7 @@ class PythonVerifier(BaseVerifier):
|
|
|
138
142
|
self.venv_path = tempfile.mkdtemp()
|
|
139
143
|
try:
|
|
140
144
|
subprocess.run(
|
|
141
|
-
["uv", "venv", self.venv_path],
|
|
145
|
+
["uv", "venv", "--python", sys.executable, self.venv_path],
|
|
142
146
|
check=True,
|
|
143
147
|
capture_output=True,
|
|
144
148
|
timeout=self._timeout,
|
|
@@ -167,7 +171,11 @@ class PythonVerifier(BaseVerifier):
|
|
|
167
171
|
raise
|
|
168
172
|
|
|
169
173
|
if self.required_packages:
|
|
170
|
-
venv_python = os.path.join(
|
|
174
|
+
venv_python = os.path.join(
|
|
175
|
+
self.venv_path,
|
|
176
|
+
self.bin_dir,
|
|
177
|
+
"python.exe" if os.name == 'nt' else "python",
|
|
178
|
+
)
|
|
171
179
|
try:
|
|
172
180
|
subprocess.run(
|
|
173
181
|
[
|
|
@@ -214,7 +222,7 @@ class PythonVerifier(BaseVerifier):
|
|
|
214
222
|
self.venv_path = None
|
|
215
223
|
|
|
216
224
|
async def _verify_implementation(
|
|
217
|
-
self, solution: str,
|
|
225
|
+
self, solution: str, reference_answer: Optional[str]
|
|
218
226
|
) -> VerificationResult:
|
|
219
227
|
r"""Executes the provided Python solution in an isolated environment
|
|
220
228
|
and verifies its output against an expected ground truth expression.
|
|
@@ -230,7 +238,7 @@ class PythonVerifier(BaseVerifier):
|
|
|
230
238
|
Args:
|
|
231
239
|
solution (str): The Python code or expression to execute and
|
|
232
240
|
verify.
|
|
233
|
-
|
|
241
|
+
reference_answer (Optional[str]): The expected value as a Python
|
|
234
242
|
expression. If None, only execution success is verified.
|
|
235
243
|
|
|
236
244
|
Returns:
|
|
@@ -255,9 +263,9 @@ class PythonVerifier(BaseVerifier):
|
|
|
255
263
|
error_message=f"Expression evaluation error: {e}",
|
|
256
264
|
)
|
|
257
265
|
|
|
258
|
-
if
|
|
266
|
+
if reference_answer is not None:
|
|
259
267
|
try:
|
|
260
|
-
gt_val = ast.literal_eval(
|
|
268
|
+
gt_val = ast.literal_eval(reference_answer)
|
|
261
269
|
except Exception as e:
|
|
262
270
|
return VerificationResult(
|
|
263
271
|
status=VerificationOutcome.ERROR,
|
|
@@ -284,7 +292,11 @@ class PythonVerifier(BaseVerifier):
|
|
|
284
292
|
|
|
285
293
|
# Otherwise, run the code block,
|
|
286
294
|
# which should already include a print(...) in the end
|
|
287
|
-
venv_python = os.path.join(
|
|
295
|
+
venv_python = os.path.join(
|
|
296
|
+
self.venv_path,
|
|
297
|
+
self.bin_dir,
|
|
298
|
+
"python.exe" if os.name == 'nt' else "python",
|
|
299
|
+
)
|
|
288
300
|
if not os.path.exists(venv_python):
|
|
289
301
|
return VerificationResult(
|
|
290
302
|
status=VerificationOutcome.ERROR,
|
|
@@ -303,29 +315,17 @@ class PythonVerifier(BaseVerifier):
|
|
|
303
315
|
error_message=f"Solution code error:\n{sol_err}",
|
|
304
316
|
)
|
|
305
317
|
|
|
306
|
-
if
|
|
318
|
+
if reference_answer is not None:
|
|
307
319
|
try:
|
|
308
320
|
# First, try to evaluate the output as-is.
|
|
309
321
|
sol_val = ast.literal_eval(sol_out)
|
|
310
322
|
except Exception as e:
|
|
311
|
-
logger.warning(
|
|
312
|
-
|
|
313
|
-
)
|
|
314
|
-
try:
|
|
315
|
-
# Try to convert sol_out to a literal
|
|
316
|
-
# by wrapping it with repr.
|
|
317
|
-
# FIXME: may be unnecessary
|
|
318
|
-
sol_val = ast.literal_eval(repr(sol_out))
|
|
319
|
-
except Exception as e2:
|
|
320
|
-
logger.warning(
|
|
321
|
-
f"repr eval also failed: {e2}."
|
|
322
|
-
"Falling back to string comparison."
|
|
323
|
-
)
|
|
324
|
-
sol_val = None
|
|
323
|
+
logger.warning(f"Direct eval failed: {e}.")
|
|
324
|
+
sol_val = None
|
|
325
325
|
|
|
326
326
|
if sol_val is not None:
|
|
327
327
|
try:
|
|
328
|
-
gt_val = ast.literal_eval(
|
|
328
|
+
gt_val = ast.literal_eval(reference_answer)
|
|
329
329
|
except Exception as e:
|
|
330
330
|
return VerificationResult(
|
|
331
331
|
status=VerificationOutcome.ERROR,
|
|
@@ -347,7 +347,7 @@ class PythonVerifier(BaseVerifier):
|
|
|
347
347
|
)
|
|
348
348
|
else:
|
|
349
349
|
# Fallback: string comparison
|
|
350
|
-
if sol_out.strip() ==
|
|
350
|
+
if sol_out.strip() == reference_answer.strip():
|
|
351
351
|
return VerificationResult(
|
|
352
352
|
status=VerificationOutcome.SUCCESS,
|
|
353
353
|
result=sol_out,
|
|
@@ -357,7 +357,7 @@ class PythonVerifier(BaseVerifier):
|
|
|
357
357
|
status=VerificationOutcome.FAILURE,
|
|
358
358
|
result=sol_out,
|
|
359
359
|
error_message="Fallback string mismatch: "
|
|
360
|
-
f"'{sol_out}' != '{
|
|
360
|
+
f"'{sol_out}' != '{reference_answer}'",
|
|
361
361
|
)
|
|
362
362
|
else:
|
|
363
363
|
return VerificationResult(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: camel-ai
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.39
|
|
4
4
|
Summary: Communicative Agents for AI Society Study
|
|
5
5
|
Project-URL: Homepage, https://www.camel-ai.org/
|
|
6
6
|
Project-URL: Repository, https://github.com/camel-ai/camel
|
|
@@ -14,11 +14,9 @@ Requires-Dist: colorama<0.5,>=0.4.6
|
|
|
14
14
|
Requires-Dist: docstring-parser<0.16,>=0.15
|
|
15
15
|
Requires-Dist: httpx<1.0.0dev,>=0.28.0
|
|
16
16
|
Requires-Dist: jsonschema<5,>=4
|
|
17
|
-
Requires-Dist:
|
|
18
|
-
Requires-Dist: openai<2,>=1.59.7
|
|
17
|
+
Requires-Dist: openai<2,>=1.68.0
|
|
19
18
|
Requires-Dist: psutil<6,>=5.9.8
|
|
20
19
|
Requires-Dist: pydantic<2.10,>=1.9
|
|
21
|
-
Requires-Dist: pyyaml<7,>=6.0.2
|
|
22
20
|
Requires-Dist: tiktoken<0.8,>=0.7.0
|
|
23
21
|
Provides-Extra: all
|
|
24
22
|
Requires-Dist: accelerate<0.27,>=0.26.0; extra == 'all'
|
|
@@ -57,6 +55,7 @@ Requires-Dist: ipykernel<7,>=6.0.0; extra == 'all'
|
|
|
57
55
|
Requires-Dist: jupyter-client<9,>=8.6.2; extra == 'all'
|
|
58
56
|
Requires-Dist: linkup-sdk<0.3,>=0.2.1; extra == 'all'
|
|
59
57
|
Requires-Dist: litellm<2,>=1.38.1; extra == 'all'
|
|
58
|
+
Requires-Dist: math-verify<0.8,>=0.7.0; extra == 'all'
|
|
60
59
|
Requires-Dist: mcp>=1.3.0; extra == 'all'
|
|
61
60
|
Requires-Dist: mem0ai>=0.1.67; extra == 'all'
|
|
62
61
|
Requires-Dist: mistralai<2,>=1.1.0; extra == 'all'
|
|
@@ -67,6 +66,7 @@ Requires-Dist: neo4j<6,>=5.18.0; extra == 'all'
|
|
|
67
66
|
Requires-Dist: networkx<4,>=3.4.2; extra == 'all'
|
|
68
67
|
Requires-Dist: newspaper3k<0.3,>=0.2.8; extra == 'all'
|
|
69
68
|
Requires-Dist: notion-client<3,>=2.2.1; extra == 'all'
|
|
69
|
+
Requires-Dist: numpy~=1.26; extra == 'all'
|
|
70
70
|
Requires-Dist: openapi-spec-validator<0.8,>=0.7.1; extra == 'all'
|
|
71
71
|
Requires-Dist: opencv-python<5,>=4; extra == 'all'
|
|
72
72
|
Requires-Dist: openpyxl>=3.1.5; extra == 'all'
|
|
@@ -87,6 +87,7 @@ Requires-Dist: pytelegrambotapi<5,>=4.18.0; extra == 'all'
|
|
|
87
87
|
Requires-Dist: pytest-asyncio<0.24,>=0.23.0; extra == 'all'
|
|
88
88
|
Requires-Dist: pytest-cov<5,>=4; extra == 'all'
|
|
89
89
|
Requires-Dist: pytest<8,>=7; extra == 'all'
|
|
90
|
+
Requires-Dist: pytidb-experimental==0.0.1.dev4; extra == 'all'
|
|
90
91
|
Requires-Dist: qdrant-client<2,>=1.9.0; extra == 'all'
|
|
91
92
|
Requires-Dist: rank-bm25<0.3,>=0.2.2; extra == 'all'
|
|
92
93
|
Requires-Dist: redis<6,>=5.0.6; extra == 'all'
|
|
@@ -133,7 +134,9 @@ Provides-Extra: data-tools
|
|
|
133
134
|
Requires-Dist: aiosqlite<0.21,>=0.20.0; extra == 'data-tools'
|
|
134
135
|
Requires-Dist: datacommons-pandas<0.0.4,>=0.0.3; extra == 'data-tools'
|
|
135
136
|
Requires-Dist: datacommons<2,>=1.4.3; extra == 'data-tools'
|
|
137
|
+
Requires-Dist: math-verify<0.8,>=0.7.0; extra == 'data-tools'
|
|
136
138
|
Requires-Dist: networkx<4,>=3.4.2; extra == 'data-tools'
|
|
139
|
+
Requires-Dist: numpy~=1.26; extra == 'data-tools'
|
|
137
140
|
Requires-Dist: pandas<2,>=1.5.3; extra == 'data-tools'
|
|
138
141
|
Requires-Dist: rouge<2,>=1.0.1; extra == 'data-tools'
|
|
139
142
|
Requires-Dist: stripe<12,>=11.3.0; extra == 'data-tools'
|
|
@@ -177,6 +180,7 @@ Requires-Dist: beautifulsoup4<5,>=4; extra == 'document-tools'
|
|
|
177
180
|
Requires-Dist: docx2txt<0.9,>=0.8; extra == 'document-tools'
|
|
178
181
|
Requires-Dist: docx>=0.2.4; extra == 'document-tools'
|
|
179
182
|
Requires-Dist: fpdf>=1.7.2; extra == 'document-tools'
|
|
183
|
+
Requires-Dist: numpy~=1.26; extra == 'document-tools'
|
|
180
184
|
Requires-Dist: openapi-spec-validator<0.8,>=0.7.1; extra == 'document-tools'
|
|
181
185
|
Requires-Dist: openpyxl>=3.1.5; extra == 'document-tools'
|
|
182
186
|
Requires-Dist: pandasai<3,>=2.3.0; extra == 'document-tools'
|
|
@@ -208,12 +212,57 @@ Requires-Dist: fish-audio-sdk<2025,>=2024.12.5; extra == 'model-platforms'
|
|
|
208
212
|
Requires-Dist: litellm<2,>=1.38.1; extra == 'model-platforms'
|
|
209
213
|
Requires-Dist: mistralai<2,>=1.1.0; extra == 'model-platforms'
|
|
210
214
|
Requires-Dist: reka-api<4,>=3.0.8; extra == 'model-platforms'
|
|
215
|
+
Provides-Extra: owl
|
|
216
|
+
Requires-Dist: anthropic<0.50.0,>=0.47.0; extra == 'owl'
|
|
217
|
+
Requires-Dist: beautifulsoup4<5,>=4; extra == 'owl'
|
|
218
|
+
Requires-Dist: chunkr-ai>=0.0.41; extra == 'owl'
|
|
219
|
+
Requires-Dist: datasets<4,>=3; extra == 'owl'
|
|
220
|
+
Requires-Dist: docx2txt<0.9,>=0.8; extra == 'owl'
|
|
221
|
+
Requires-Dist: docx>=0.2.4; extra == 'owl'
|
|
222
|
+
Requires-Dist: duckduckgo-search<7,>=6.3.5; extra == 'owl'
|
|
223
|
+
Requires-Dist: e2b-code-interpreter<2,>=1.0.3; extra == 'owl'
|
|
224
|
+
Requires-Dist: ffmpeg-python<0.3,>=0.2.0; extra == 'owl'
|
|
225
|
+
Requires-Dist: fpdf>=1.7.2; extra == 'owl'
|
|
226
|
+
Requires-Dist: html2text>=2024.2.26; extra == 'owl'
|
|
227
|
+
Requires-Dist: imageio[pyav]<3,>=2.34.2; extra == 'owl'
|
|
228
|
+
Requires-Dist: mcp-server-fetch==2025.1.17; extra == 'owl'
|
|
229
|
+
Requires-Dist: mcp-simple-arxiv==0.2.2; extra == 'owl'
|
|
230
|
+
Requires-Dist: newspaper3k<0.3,>=0.2.8; extra == 'owl'
|
|
231
|
+
Requires-Dist: numpy~=1.26; extra == 'owl'
|
|
232
|
+
Requires-Dist: openapi-spec-validator<0.8,>=0.7.1; extra == 'owl'
|
|
233
|
+
Requires-Dist: opencv-python<5,>=4; extra == 'owl'
|
|
234
|
+
Requires-Dist: openpyxl>=3.1.5; extra == 'owl'
|
|
235
|
+
Requires-Dist: outlines<0.2,>=0.1.7; extra == 'owl'
|
|
236
|
+
Requires-Dist: pandas<2,>=1.5.3; extra == 'owl'
|
|
237
|
+
Requires-Dist: pandasai<3,>=2.3.0; extra == 'owl'
|
|
238
|
+
Requires-Dist: pillow<11.0.0,>=10.1.0; extra == 'owl'
|
|
239
|
+
Requires-Dist: playwright>=1.50.0; extra == 'owl'
|
|
240
|
+
Requires-Dist: prance<24,>=23.6.21.0; extra == 'owl'
|
|
241
|
+
Requires-Dist: pydub<0.26,>=0.25.1; extra == 'owl'
|
|
242
|
+
Requires-Dist: pymupdf<2,>=1.22.5; extra == 'owl'
|
|
243
|
+
Requires-Dist: python-dotenv<2,>=1.0.0; extra == 'owl'
|
|
244
|
+
Requires-Dist: requests-oauthlib<2,>=1.3.1; extra == 'owl'
|
|
245
|
+
Requires-Dist: rouge<2,>=1.0.1; extra == 'owl'
|
|
246
|
+
Requires-Dist: scenedetect>=0.6.5.2; extra == 'owl'
|
|
247
|
+
Requires-Dist: sentencepiece<0.3,>=0.2; extra == 'owl'
|
|
248
|
+
Requires-Dist: soundfile<0.14,>=0.13; extra == 'owl'
|
|
249
|
+
Requires-Dist: tabulate>=0.9.0; extra == 'owl'
|
|
250
|
+
Requires-Dist: transformers<5,>=4; extra == 'owl'
|
|
251
|
+
Requires-Dist: tree-sitter-python<0.24,>=0.23.6; extra == 'owl'
|
|
252
|
+
Requires-Dist: tree-sitter<0.24,>=0.23.2; extra == 'owl'
|
|
253
|
+
Requires-Dist: typer>=0.15.2; extra == 'owl'
|
|
254
|
+
Requires-Dist: unstructured==0.16.20; extra == 'owl'
|
|
255
|
+
Requires-Dist: wikipedia<2,>=1; extra == 'owl'
|
|
256
|
+
Requires-Dist: xls2xlsx>=0.2.0; extra == 'owl'
|
|
257
|
+
Requires-Dist: yt-dlp<2025,>=2024.11.4; extra == 'owl'
|
|
211
258
|
Provides-Extra: rag
|
|
212
259
|
Requires-Dist: cohere<6,>=5.11.0; extra == 'rag'
|
|
213
260
|
Requires-Dist: nebula3-python==3.8.2; extra == 'rag'
|
|
214
261
|
Requires-Dist: neo4j<6,>=5.18.0; extra == 'rag'
|
|
262
|
+
Requires-Dist: numpy~=1.26; extra == 'rag'
|
|
215
263
|
Requires-Dist: pandasai<3,>=2.3.0; extra == 'rag'
|
|
216
264
|
Requires-Dist: pymilvus<3,>=2.4.0; extra == 'rag'
|
|
265
|
+
Requires-Dist: pytidb-experimental==0.0.1.dev4; extra == 'rag'
|
|
217
266
|
Requires-Dist: qdrant-client<2,>=1.9.0; extra == 'rag'
|
|
218
267
|
Requires-Dist: rank-bm25<0.3,>=0.2.2; extra == 'rag'
|
|
219
268
|
Requires-Dist: sentence-transformers<4,>=3.0.1; extra == 'rag'
|
|
@@ -230,6 +279,7 @@ Requires-Dist: mem0ai>=0.1.73; extra == 'storage'
|
|
|
230
279
|
Requires-Dist: nebula3-python==3.8.2; extra == 'storage'
|
|
231
280
|
Requires-Dist: neo4j<6,>=5.18.0; extra == 'storage'
|
|
232
281
|
Requires-Dist: pymilvus<3,>=2.4.0; extra == 'storage'
|
|
282
|
+
Requires-Dist: pytidb-experimental==0.0.1.dev4; extra == 'storage'
|
|
233
283
|
Requires-Dist: qdrant-client<2,>=1.9.0; extra == 'storage'
|
|
234
284
|
Requires-Dist: redis<6,>=5.0.6; extra == 'storage'
|
|
235
285
|
Provides-Extra: test
|