camel-ai 0.2.59__tar.gz → 0.2.60__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.
Potentially problematic release.
This version of camel-ai might be problematic. Click here for more details.
- {camel_ai-0.2.59 → camel_ai-0.2.60}/PKG-INFO +7 -9
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/__init__.py +1 -1
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/cohere_config.py +1 -1
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/mistral_config.py +1 -1
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/openai_config.py +3 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/reka_config.py +1 -1
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/samba_config.py +2 -2
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/cot_datagen.py +29 -34
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/jina_embedding.py +8 -1
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/sentence_transformers_embeddings.py +2 -2
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/vlm_embedding.py +9 -2
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/memories/records.py +3 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/base.py +15 -3
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/azure_openai_model.py +1 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/model_factory.py +2 -2
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/retrievers/bm25_retriever.py +1 -2
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/retrievers/hybrid_retrival.py +2 -2
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/vectordb_storages/oceanbase.py +1 -2
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/async_browser_toolkit.py +5 -1
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/browser_toolkit.py +6 -3
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/dalle_toolkit.py +4 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/excel_toolkit.py +8 -2
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/github_toolkit.py +43 -25
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/image_analysis_toolkit.py +3 -0
- camel_ai-0.2.60/camel/toolkits/jina_reranker_toolkit.py +348 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/mcp_toolkit.py +57 -15
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/page_script.js +40 -28
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/twitter_toolkit.py +6 -1
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/video_analysis_toolkit.py +3 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/video_download_toolkit.py +3 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/wolfram_alpha_toolkit.py +46 -22
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/types/enums.py +14 -5
- {camel_ai-0.2.59 → camel_ai-0.2.60}/pyproject.toml +7 -9
- camel_ai-0.2.59/camel/toolkits/jina_reranker_toolkit.py +0 -231
- {camel_ai-0.2.59 → camel_ai-0.2.60}/.gitignore +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/LICENSE +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/README.md +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/_types.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/_utils.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/chat_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/critic_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/deductive_reasoner_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/embodied_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/knowledge_graph_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/mcp_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/multi_hop_generator_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/programmed_agent_instruction.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/repo_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/role_assignment_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/search_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/task_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/tool_agents/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/tool_agents/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/agents/tool_agents/hugging_face_tool_agent.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/benchmarks/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/benchmarks/apibank.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/benchmarks/apibench.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/benchmarks/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/benchmarks/browsecomp.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/benchmarks/gaia.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/benchmarks/nexus.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/benchmarks/ragbench.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/bots/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/bots/discord/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/bots/discord/discord_app.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/bots/discord/discord_installation.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/bots/discord/discord_store.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/bots/slack/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/bots/slack/models.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/bots/slack/slack_app.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/bots/telegram_bot.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/aiml_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/anthropic_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/base_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/bedrock_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/deepseek_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/gemini_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/groq_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/internlm_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/litellm_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/lmstudio_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/modelscope_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/moonshot_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/netmind_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/novita_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/nvidia_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/ollama_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/openrouter_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/ppio_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/qwen_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/sglang_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/siliconflow_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/togetherai_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/vllm_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/watsonx_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/yi_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/configs/zhipuai_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/data_collector/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/data_collector/alpaca_collector.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/data_collector/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/data_collector/sharegpt_collector.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/evol_instruct/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/evol_instruct/evol_instruct.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/evol_instruct/scorer.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/evol_instruct/templates.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/self_improving_cot.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/self_instruct/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/self_instruct/filter/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/self_instruct/filter/filter_function.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/self_instruct/filter/filter_registry.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/self_instruct/filter/instruction_filter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/self_instruct/self_instruct.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/self_instruct/templates.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/source2synth/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/source2synth/data_processor.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/source2synth/models.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datagen/source2synth/user_data_processor_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datahubs/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datahubs/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datahubs/huggingface.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datahubs/models.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datasets/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datasets/base_generator.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datasets/few_shot_generator.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datasets/models.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datasets/self_instruct_generator.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/datasets/static_dataset.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/azure_embedding.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/gemini_embedding.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/mistral_embedding.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/openai_compatible_embedding.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/openai_embedding.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/embeddings/together_embedding.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/environments/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/environments/models.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/environments/multi_step.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/environments/single_step.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/environments/tic_tac_toe.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/extractors/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/extractors/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/extractors/python_strategies.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/generators.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/human.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/interpreters/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/interpreters/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/interpreters/docker/Dockerfile +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/interpreters/docker_interpreter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/interpreters/e2b_interpreter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/interpreters/internal_python_interpreter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/interpreters/interpreter_error.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/interpreters/ipython_interpreter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/interpreters/subprocess_interpreter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/apify_reader.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/base_io.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/chunkr_reader.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/crawl4ai_reader.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/firecrawl_reader.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/jina_url_reader.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/markitdown.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/mineru_extractor.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/pandas_reader.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/scrapegraph_reader.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/loaders/unstructured_io.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/logger.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/memories/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/memories/agent_memories.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/memories/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/memories/blocks/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/memories/blocks/chat_history_block.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/memories/blocks/vectordb_block.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/memories/context_creators/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/memories/context_creators/score_based.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/conversion/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/conversion/alpaca.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/conversion/conversation_models.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/conversion/sharegpt/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/conversion/sharegpt/function_call_formatter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/conversion/sharegpt/hermes/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/conversion/sharegpt/hermes/hermes_function_formatter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/messages/func_message.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/_utils.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/aiml_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/anthropic_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/aws_bedrock_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/base_audio_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/base_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/cohere_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/deepseek_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/fish_audio_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/gemini_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/groq_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/internlm_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/litellm_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/lmstudio_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/mistral_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/model_manager.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/modelscope_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/moonshot_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/nemotron_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/netmind_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/novita_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/nvidia_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/ollama_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/openai_audio_models.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/openai_compatible_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/openai_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/openrouter_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/ppio_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/qwen_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/reka_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/reward/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/reward/base_reward_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/reward/evaluator.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/reward/nemotron_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/reward/skywork_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/samba_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/sglang_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/siliconflow_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/stub_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/togetherai_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/vllm_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/volcano_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/watsonx_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/yi_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/models/zhipuai_model.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/personas/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/personas/persona.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/personas/persona_hub.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/ai_society.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/code.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/evaluation.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/generate_text_embedding_data.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/image_craft.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/misalignment.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/multi_condition_image_craft.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/object_recognition.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/persona_hub.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/prompt_templates.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/role_description_prompt_template.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/solution_extraction.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/task_prompt_template.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/translation.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/prompts/video_description_prompt.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/py.typed +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/responses/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/responses/agent_responses.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/retrievers/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/retrievers/auto_retriever.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/retrievers/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/retrievers/cohere_rerank_retriever.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/retrievers/vector_retriever.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/api.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/configs.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/daytona_runtime.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/docker_runtime.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/llm_guard_runtime.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/remote_http_runtime.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/ubuntu_docker_runtime.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/utils/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/utils/function_risk_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/runtime/utils/ignore_risk_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/schemas/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/schemas/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/schemas/openai_converter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/schemas/outlines_converter.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/babyagi_playing.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/role_playing.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/workforce/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/workforce/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/workforce/prompts.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/workforce/role_playing_worker.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/workforce/single_agent_worker.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/workforce/task_channel.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/workforce/utils.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/workforce/worker.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/societies/workforce/workforce.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/graph_storages/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/graph_storages/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/graph_storages/graph_element.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/graph_storages/nebula_graph.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/graph_storages/neo4j_graph.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/key_value_storages/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/key_value_storages/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/key_value_storages/in_memory.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/key_value_storages/json.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/key_value_storages/mem0_cloud.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/key_value_storages/redis.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/object_storages/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/object_storages/amazon_s3.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/object_storages/azure_blob.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/object_storages/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/object_storages/google_cloud.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/vectordb_storages/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/vectordb_storages/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/vectordb_storages/milvus.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/vectordb_storages/qdrant.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/storages/vectordb_storages/tidb.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/tasks/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/tasks/task.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/tasks/task_prompt.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/terminators/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/terminators/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/terminators/response_terminator.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/terminators/token_limit_terminator.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/aci_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/arxiv_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/ask_news_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/audio_analysis_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/code_execution.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/dappier_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/data_commons_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/file_write_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/function_tool.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/google_calendar_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/google_maps_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/google_scholar_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/human_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/klavis_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/linkedin_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/math_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/memory_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/meshy_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/mineru_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/networkx_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/notion_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/biztoc/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/biztoc/ai-plugin.json +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/biztoc/openapi.yaml +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/coursera/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/coursera/openapi.yaml +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/create_qr_code/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/create_qr_code/openapi.yaml +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/klarna/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/klarna/openapi.yaml +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/nasa_apod/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/nasa_apod/openapi.yaml +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/outschool/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/outschool/ai-plugin.json +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/outschool/openapi.yaml +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/outschool/paths/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/outschool/paths/get_classes.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/outschool/paths/search_teachers.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/security_config.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/speak/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/speak/openapi.yaml +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/web_scraper/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/web_scraper/ai-plugin.json +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/web_scraper/openapi.yaml +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/web_scraper/paths/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_specs/web_scraper/paths/scraper.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/open_api_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/openai_agent_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/openbb_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/playwright_mcp_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/pubmed_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/pulse_mcp_search_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/pyautogui_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/reddit_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/retrieval_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/search_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/searxng_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/semantic_scholar_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/slack_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/stripe_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/sympy_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/terminal_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/thinking_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/weather_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/whatsapp_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/toolkits/zapier_toolkit.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/types/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/types/agents/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/types/agents/tool_calling_record.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/types/mcp_registries.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/types/openai_types.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/types/unified_model_type.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/async_func.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/chunker/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/chunker/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/chunker/code_chunker.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/chunker/uio_chunker.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/commons.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/constants.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/deduplication.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/filename.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/mcp.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/response_format.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/utils/token_counting.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/verifiers/__init__.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/verifiers/base.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/verifiers/math_verifier.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/verifiers/models.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/verifiers/physics_verifier.py +0 -0
- {camel_ai-0.2.59 → camel_ai-0.2.60}/camel/verifiers/python_verifier.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: camel-ai
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.60
|
|
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
|
|
@@ -16,6 +16,7 @@ Requires-Dist: httpx<1.0.0dev,>=0.28.0
|
|
|
16
16
|
Requires-Dist: jsonschema<5,>=4
|
|
17
17
|
Requires-Dist: mcp>=1.3.0
|
|
18
18
|
Requires-Dist: openai<2,>=1.68.0
|
|
19
|
+
Requires-Dist: pillow<11.0.0,>=10.1.0
|
|
19
20
|
Requires-Dist: psutil<6,>=5.9.8
|
|
20
21
|
Requires-Dist: pydantic>=2.10.6
|
|
21
22
|
Requires-Dist: tiktoken<0.8,>=0.7.0
|
|
@@ -77,14 +78,13 @@ Requires-Dist: neo4j<6,>=5.18.0; extra == 'all'
|
|
|
77
78
|
Requires-Dist: networkx<4,>=3.4.2; extra == 'all'
|
|
78
79
|
Requires-Dist: newspaper3k<0.3,>=0.2.8; extra == 'all'
|
|
79
80
|
Requires-Dist: notion-client<3,>=2.2.1; extra == 'all'
|
|
80
|
-
Requires-Dist: numpy
|
|
81
|
+
Requires-Dist: numpy<=2.2,>=1.2; extra == 'all'
|
|
81
82
|
Requires-Dist: openapi-spec-validator<0.8,>=0.7.1; extra == 'all'
|
|
82
83
|
Requires-Dist: opencv-python<5,>=4; extra == 'all'
|
|
83
84
|
Requires-Dist: openpyxl>=3.1.5; extra == 'all'
|
|
84
85
|
Requires-Dist: outlines<0.2,>=0.1.7; extra == 'all'
|
|
85
86
|
Requires-Dist: pandas<2,>=1.5.3; extra == 'all'
|
|
86
87
|
Requires-Dist: pandasai<3,>=2.3.0; extra == 'all'
|
|
87
|
-
Requires-Dist: pillow<11.0.0,>=10.1.0; extra == 'all'
|
|
88
88
|
Requires-Dist: playwright>=1.50.0; extra == 'all'
|
|
89
89
|
Requires-Dist: prance<24,>=23.6.21.0; extra == 'all'
|
|
90
90
|
Requires-Dist: praw<8,>=7.7.1; extra == 'all'
|
|
@@ -150,7 +150,7 @@ Requires-Dist: datacommons-pandas<0.0.4,>=0.0.3; extra == 'data-tools'
|
|
|
150
150
|
Requires-Dist: datacommons<2,>=1.4.3; extra == 'data-tools'
|
|
151
151
|
Requires-Dist: math-verify<0.8,>=0.7.0; extra == 'data-tools'
|
|
152
152
|
Requires-Dist: networkx<4,>=3.4.2; extra == 'data-tools'
|
|
153
|
-
Requires-Dist: numpy
|
|
153
|
+
Requires-Dist: numpy<=2.2,>=1.2; extra == 'data-tools'
|
|
154
154
|
Requires-Dist: pandas<2,>=1.5.3; extra == 'data-tools'
|
|
155
155
|
Requires-Dist: rouge<2,>=1.0.1; extra == 'data-tools'
|
|
156
156
|
Requires-Dist: stripe<12,>=11.3.0; extra == 'data-tools'
|
|
@@ -198,7 +198,7 @@ Requires-Dist: docx2txt<0.9,>=0.8; extra == 'document-tools'
|
|
|
198
198
|
Requires-Dist: docx>=0.2.4; extra == 'document-tools'
|
|
199
199
|
Requires-Dist: fpdf>=1.7.2; extra == 'document-tools'
|
|
200
200
|
Requires-Dist: markitdown==0.1.1; extra == 'document-tools'
|
|
201
|
-
Requires-Dist: numpy
|
|
201
|
+
Requires-Dist: numpy<=2.2,>=1.2; extra == 'document-tools'
|
|
202
202
|
Requires-Dist: openapi-spec-validator<0.8,>=0.7.1; extra == 'document-tools'
|
|
203
203
|
Requires-Dist: openpyxl>=3.1.5; extra == 'document-tools'
|
|
204
204
|
Requires-Dist: pandasai<3,>=2.3.0; extra == 'document-tools'
|
|
@@ -219,7 +219,6 @@ Requires-Dist: transformers<5,>=4; extra == 'huggingface'
|
|
|
219
219
|
Provides-Extra: media-tools
|
|
220
220
|
Requires-Dist: ffmpeg-python<0.3,>=0.2.0; extra == 'media-tools'
|
|
221
221
|
Requires-Dist: imageio[pyav]<3,>=2.34.2; extra == 'media-tools'
|
|
222
|
-
Requires-Dist: pillow<11.0.0,>=10.1.0; extra == 'media-tools'
|
|
223
222
|
Requires-Dist: pydub<0.26,>=0.25.1; extra == 'media-tools'
|
|
224
223
|
Requires-Dist: scenedetect>=0.6.5.2; extra == 'media-tools'
|
|
225
224
|
Requires-Dist: yt-dlp<2025,>=2024.11.4; extra == 'media-tools'
|
|
@@ -249,14 +248,13 @@ Requires-Dist: imageio[pyav]<3,>=2.34.2; extra == 'owl'
|
|
|
249
248
|
Requires-Dist: mcp-server-fetch==2025.1.17; extra == 'owl'
|
|
250
249
|
Requires-Dist: mcp-simple-arxiv==0.2.2; extra == 'owl'
|
|
251
250
|
Requires-Dist: newspaper3k<0.3,>=0.2.8; extra == 'owl'
|
|
252
|
-
Requires-Dist: numpy
|
|
251
|
+
Requires-Dist: numpy<=2.2,>=1.2; extra == 'owl'
|
|
253
252
|
Requires-Dist: openapi-spec-validator<0.8,>=0.7.1; extra == 'owl'
|
|
254
253
|
Requires-Dist: opencv-python<5,>=4; extra == 'owl'
|
|
255
254
|
Requires-Dist: openpyxl>=3.1.5; extra == 'owl'
|
|
256
255
|
Requires-Dist: outlines<0.2,>=0.1.7; extra == 'owl'
|
|
257
256
|
Requires-Dist: pandas<2,>=1.5.3; extra == 'owl'
|
|
258
257
|
Requires-Dist: pandasai<3,>=2.3.0; extra == 'owl'
|
|
259
|
-
Requires-Dist: pillow<11.0.0,>=10.1.0; extra == 'owl'
|
|
260
258
|
Requires-Dist: playwright>=1.50.0; extra == 'owl'
|
|
261
259
|
Requires-Dist: prance<24,>=23.6.21.0; extra == 'owl'
|
|
262
260
|
Requires-Dist: pyautogui<0.10,>=0.9.54; extra == 'owl'
|
|
@@ -284,7 +282,7 @@ Requires-Dist: crawl4ai>=0.3.745; extra == 'rag'
|
|
|
284
282
|
Requires-Dist: google-genai>=1.13.0; extra == 'rag'
|
|
285
283
|
Requires-Dist: nebula3-python==3.8.2; extra == 'rag'
|
|
286
284
|
Requires-Dist: neo4j<6,>=5.18.0; extra == 'rag'
|
|
287
|
-
Requires-Dist: numpy
|
|
285
|
+
Requires-Dist: numpy<=2.2,>=1.2; extra == 'rag'
|
|
288
286
|
Requires-Dist: pandasai<3,>=2.3.0; extra == 'rag'
|
|
289
287
|
Requires-Dist: pymilvus<3,>=2.4.0; extra == 'rag'
|
|
290
288
|
Requires-Dist: pyobvector>=0.1.18; extra == 'rag'
|
|
@@ -104,6 +104,8 @@ class ChatGPTConfig(BaseConfig):
|
|
|
104
104
|
parallel_tool_calls (bool, optional): A parameter specifying whether
|
|
105
105
|
the model should call tools in parallel or not.
|
|
106
106
|
(default: :obj:`None`)
|
|
107
|
+
extra_headers: Optional[Dict[str, str]]: Extra headers to use for the
|
|
108
|
+
model. (default: :obj:`None`)
|
|
107
109
|
"""
|
|
108
110
|
|
|
109
111
|
temperature: Optional[float] = None
|
|
@@ -120,6 +122,7 @@ class ChatGPTConfig(BaseConfig):
|
|
|
120
122
|
tool_choice: Optional[Union[Dict[str, str], str]] = None
|
|
121
123
|
reasoning_effort: Optional[str] = None
|
|
122
124
|
parallel_tool_calls: Optional[bool] = None
|
|
125
|
+
extra_headers: Optional[Dict[str, str]] = None
|
|
123
126
|
|
|
124
127
|
|
|
125
128
|
OPENAI_API_PARAMS = {param for param in ChatGPTConfig.model_fields.keys()}
|
|
@@ -65,7 +65,7 @@ class SambaVerseAPIConfig(BaseConfig):
|
|
|
65
65
|
|
|
66
66
|
|
|
67
67
|
SAMBA_VERSE_API_PARAMS = {
|
|
68
|
-
param for param in SambaVerseAPIConfig
|
|
68
|
+
param for param in SambaVerseAPIConfig.model_fields.keys()
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
|
|
@@ -160,5 +160,5 @@ class SambaCloudAPIConfig(BaseConfig):
|
|
|
160
160
|
|
|
161
161
|
|
|
162
162
|
SAMBA_CLOUD_API_PARAMS = {
|
|
163
|
-
param for param in SambaCloudAPIConfig
|
|
163
|
+
param for param in SambaCloudAPIConfig.model_fields.keys()
|
|
164
164
|
}
|
|
@@ -204,26 +204,23 @@ class CoTDataGenerator:
|
|
|
204
204
|
logger.info("Answer verification result: %s", is_correct)
|
|
205
205
|
return is_correct
|
|
206
206
|
|
|
207
|
-
def
|
|
207
|
+
def evaluate_partial_solution(
|
|
208
208
|
self, question: str, partial_solution: str = ""
|
|
209
209
|
) -> float:
|
|
210
|
-
r"""
|
|
210
|
+
r"""Evaluate the quality of a partial solution against the
|
|
211
|
+
golden answer.
|
|
211
212
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
scores
|
|
215
|
-
b. Expansion: Generate new solution steps using the generator agent
|
|
216
|
-
c. Simulation: Evaluate solution quality using similarity scores
|
|
217
|
-
d. Backpropagation: Update solution tree with new findings
|
|
213
|
+
This function generates a similarity score between the given partial
|
|
214
|
+
solution and the correct answer (golden answer).
|
|
218
215
|
|
|
219
216
|
Args:
|
|
220
|
-
question (str): The question
|
|
221
|
-
partial_solution (str): The
|
|
217
|
+
question (str): The question being solved.
|
|
218
|
+
partial_solution (str): The partial solution generated so far.
|
|
222
219
|
(default::obj:`""`)
|
|
223
220
|
|
|
224
221
|
Returns:
|
|
225
|
-
float:
|
|
226
|
-
solution
|
|
222
|
+
float: A similarity score between 0 and 1, indicating how close the
|
|
223
|
+
partial solution is to the golden answer.
|
|
227
224
|
"""
|
|
228
225
|
if question not in self.golden_answers:
|
|
229
226
|
raise ValueError(
|
|
@@ -293,10 +290,21 @@ class CoTDataGenerator:
|
|
|
293
290
|
r"""Solve a question using a multi-step approach.
|
|
294
291
|
|
|
295
292
|
The solution process follows these steps:
|
|
296
|
-
1. Try to solve directly - if correct, return the solution
|
|
297
|
-
2. If not correct,
|
|
298
|
-
|
|
299
|
-
|
|
293
|
+
1. Try to solve directly - if correct, return the solution.
|
|
294
|
+
2. If not correct, perform a search by iteratively generating
|
|
295
|
+
new solutions and evaluating their similarity scores to
|
|
296
|
+
find a good solution. The search process involves:
|
|
297
|
+
a. Generation: Generate new solution candidates using
|
|
298
|
+
the generator agent.
|
|
299
|
+
b. Evaluation: Score each solution candidate for similarity
|
|
300
|
+
to the golden answer.
|
|
301
|
+
c. Selection: Keep the best-scoring candidate found so far.
|
|
302
|
+
d. Early stopping: If a sufficiently high-scoring solution
|
|
303
|
+
is found (score > 0.9), stop early.
|
|
304
|
+
3. If the solution isn't perfect, use binary search to locate
|
|
305
|
+
errors.
|
|
306
|
+
4. Generate a new solution based on the correct part of the
|
|
307
|
+
initial solution.
|
|
300
308
|
|
|
301
309
|
Args:
|
|
302
310
|
question (str): The question to solve.
|
|
@@ -304,14 +312,14 @@ class CoTDataGenerator:
|
|
|
304
312
|
Returns:
|
|
305
313
|
str: The best solution found.
|
|
306
314
|
"""
|
|
315
|
+
|
|
307
316
|
# 1. Try direct solution first
|
|
308
317
|
solution = self.get_answer(question)
|
|
309
318
|
if self.verify_answer(question, solution):
|
|
310
319
|
logger.info("Initial solution is correct")
|
|
311
320
|
return solution
|
|
312
321
|
|
|
313
|
-
# 2. If direct solution fails,
|
|
314
|
-
# to find a solution with high similarity score
|
|
322
|
+
# 2. If direct solution fails, iteratively search for a better solution
|
|
315
323
|
best_solution = ""
|
|
316
324
|
best_score: float = 0.0
|
|
317
325
|
for i in range(self.search_limit):
|
|
@@ -319,23 +327,10 @@ class CoTDataGenerator:
|
|
|
319
327
|
current_solution = self.get_answer(question, best_solution)
|
|
320
328
|
|
|
321
329
|
# Evaluate solution similarity score
|
|
322
|
-
prompt = (
|
|
323
|
-
f"Please evaluate this solution and "
|
|
324
|
-
f"give a score between 0-1:\n"
|
|
325
|
-
f"Question: {question}\n"
|
|
326
|
-
f"Solution: {current_solution}\n"
|
|
327
|
-
f"Correct answer: {self.golden_answers.get(question, '')}\n"
|
|
328
|
-
f"Return a JSON object with a single field 'score' containing "
|
|
329
|
-
f"a float between 0 and 1, like this: {{'score': 0.85}}\n"
|
|
330
|
-
)
|
|
331
|
-
self.generator_agent.reset()
|
|
332
|
-
response = self.generator_agent.step(prompt)
|
|
333
330
|
try:
|
|
334
|
-
|
|
335
|
-
|
|
331
|
+
score = self.evaluate_partial_solution(
|
|
332
|
+
question, current_solution
|
|
336
333
|
)
|
|
337
|
-
agent_response = response.msgs[0].parsed.score # type: ignore [union-attr]
|
|
338
|
-
score = agent_response
|
|
339
334
|
|
|
340
335
|
# Exit early if we find a very good solution (score > 0.9)
|
|
341
336
|
if score > 0.9:
|
|
@@ -357,7 +352,7 @@ class CoTDataGenerator:
|
|
|
357
352
|
best_score,
|
|
358
353
|
)
|
|
359
354
|
except Exception as e:
|
|
360
|
-
logger.error("Error
|
|
355
|
+
logger.error("Error evaluating partial solution: %s", str(e))
|
|
361
356
|
continue
|
|
362
357
|
|
|
363
358
|
# 3. If the answer is not completely correct,
|
|
@@ -12,6 +12,9 @@
|
|
|
12
12
|
# limitations under the License.
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
14
|
|
|
15
|
+
# Enables postponed evaluation of annotations (for string-based type hints)
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
15
18
|
import base64
|
|
16
19
|
import io
|
|
17
20
|
import os
|
|
@@ -104,6 +107,7 @@ class JinaEmbedding(BaseEmbedding[Union[str, Image.Image]]):
|
|
|
104
107
|
ValueError: If the input type is not supported.
|
|
105
108
|
RuntimeError: If the API request fails.
|
|
106
109
|
"""
|
|
110
|
+
|
|
107
111
|
input_data = []
|
|
108
112
|
for obj in objs:
|
|
109
113
|
if isinstance(obj, str):
|
|
@@ -111,7 +115,10 @@ class JinaEmbedding(BaseEmbedding[Union[str, Image.Image]]):
|
|
|
111
115
|
input_data.append({"text": obj})
|
|
112
116
|
else:
|
|
113
117
|
input_data.append(obj) # type: ignore[arg-type]
|
|
114
|
-
elif
|
|
118
|
+
elif (
|
|
119
|
+
obj.__class__.__module__ == "PIL.Image"
|
|
120
|
+
and obj.__class__.__name__ == "Image"
|
|
121
|
+
):
|
|
115
122
|
if self.model_type != EmbeddingModelType.JINA_CLIP_V2:
|
|
116
123
|
raise ValueError(
|
|
117
124
|
f"Model {self.model_type} does not support "
|
|
@@ -15,8 +15,6 @@ from __future__ import annotations
|
|
|
15
15
|
|
|
16
16
|
from typing import Any
|
|
17
17
|
|
|
18
|
-
from numpy import ndarray
|
|
19
|
-
|
|
20
18
|
from camel.embeddings.base import BaseEmbedding
|
|
21
19
|
|
|
22
20
|
|
|
@@ -61,6 +59,8 @@ class SentenceTransformerEncoder(BaseEmbedding[str]):
|
|
|
61
59
|
list[list[float]]: A list that represents the generated embedding
|
|
62
60
|
as a list of floating-point numbers.
|
|
63
61
|
"""
|
|
62
|
+
from numpy import ndarray
|
|
63
|
+
|
|
64
64
|
if not objs:
|
|
65
65
|
raise ValueError("Input text list is empty")
|
|
66
66
|
embeddings = self.model.encode(
|
|
@@ -11,6 +11,10 @@
|
|
|
11
11
|
# See the License for the specific language governing permissions and
|
|
12
12
|
# limitations under the License.
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
|
+
|
|
15
|
+
# Enables postponed evaluation of annotations (for string-based type hints)
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
14
18
|
from typing import Any, List, Optional, Union
|
|
15
19
|
|
|
16
20
|
from PIL import Image
|
|
@@ -70,7 +74,7 @@ class VisionLanguageEmbedding(BaseEmbedding[Union[str, Image.Image]]):
|
|
|
70
74
|
def embed_list(
|
|
71
75
|
self, objs: List[Union[Image.Image, str]], **kwargs: Any
|
|
72
76
|
) -> List[List[float]]:
|
|
73
|
-
"""Generates embeddings for the given images or texts.
|
|
77
|
+
r"""Generates embeddings for the given images or texts.
|
|
74
78
|
|
|
75
79
|
Args:
|
|
76
80
|
objs (List[Image.Image|str]): The list of images or texts for
|
|
@@ -98,7 +102,10 @@ class VisionLanguageEmbedding(BaseEmbedding[Union[str, Image.Image]]):
|
|
|
98
102
|
|
|
99
103
|
result_list = []
|
|
100
104
|
for obj in objs:
|
|
101
|
-
if
|
|
105
|
+
if (
|
|
106
|
+
obj.__class__.__module__ == "PIL.Image"
|
|
107
|
+
and obj.__class__.__name__ == "Image"
|
|
108
|
+
):
|
|
102
109
|
image_input = self.processor(
|
|
103
110
|
images=obj,
|
|
104
111
|
return_tensors="pt",
|
|
@@ -12,6 +12,9 @@
|
|
|
12
12
|
# limitations under the License.
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
14
|
|
|
15
|
+
# Enables postponed evaluation of annotations (for string-based type hints)
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
15
18
|
from dataclasses import asdict
|
|
16
19
|
from datetime import datetime, timezone
|
|
17
20
|
from typing import Any, ClassVar, Dict
|
|
@@ -11,13 +11,24 @@
|
|
|
11
11
|
# See the License for the specific language governing permissions and
|
|
12
12
|
# limitations under the License.
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
|
+
|
|
15
|
+
# Enables postponed evaluation of annotations (for string-based type hints)
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
14
18
|
import base64
|
|
15
19
|
import io
|
|
16
20
|
import re
|
|
17
21
|
from dataclasses import dataclass
|
|
18
|
-
from typing import
|
|
22
|
+
from typing import (
|
|
23
|
+
Any,
|
|
24
|
+
Dict,
|
|
25
|
+
List,
|
|
26
|
+
Literal,
|
|
27
|
+
Optional,
|
|
28
|
+
Tuple,
|
|
29
|
+
Union,
|
|
30
|
+
)
|
|
19
31
|
|
|
20
|
-
import numpy as np
|
|
21
32
|
from PIL import Image
|
|
22
33
|
from pydantic import BaseModel
|
|
23
34
|
|
|
@@ -48,7 +59,7 @@ class BaseMessage:
|
|
|
48
59
|
role_name (str): The name of the user or assistant role.
|
|
49
60
|
role_type (RoleType): The type of role, either :obj:`RoleType.
|
|
50
61
|
ASSISTANT` or :obj:`RoleType.USER`.
|
|
51
|
-
meta_dict (Optional[Dict[str,
|
|
62
|
+
meta_dict (Optional[Dict[str, Any]]): Additional metadata dictionary
|
|
52
63
|
for the message.
|
|
53
64
|
content (str): The content of the message.
|
|
54
65
|
video_bytes (Optional[bytes]): Optional bytes of a video associated
|
|
@@ -457,6 +468,7 @@ class BaseMessage:
|
|
|
457
468
|
|
|
458
469
|
if self.video_bytes:
|
|
459
470
|
import imageio.v3 as iio
|
|
471
|
+
import numpy as np
|
|
460
472
|
|
|
461
473
|
base64Frames: List[str] = []
|
|
462
474
|
frame_count = 0
|
|
@@ -14,8 +14,6 @@
|
|
|
14
14
|
import json
|
|
15
15
|
from typing import ClassVar, Dict, Optional, Type, Union
|
|
16
16
|
|
|
17
|
-
import yaml
|
|
18
|
-
|
|
19
17
|
from camel.models.aiml_model import AIMLModel
|
|
20
18
|
from camel.models.anthropic_model import AnthropicModel
|
|
21
19
|
from camel.models.aws_bedrock_model import AWSBedrockModel
|
|
@@ -221,6 +219,8 @@ class ModelFactory:
|
|
|
221
219
|
|
|
222
220
|
@classmethod
|
|
223
221
|
def __load_yaml(cls, filepath: str) -> Dict:
|
|
222
|
+
import yaml
|
|
223
|
+
|
|
224
224
|
r"""Loads and parses a YAML file into a dictionary.
|
|
225
225
|
|
|
226
226
|
Args:
|
|
@@ -13,8 +13,6 @@
|
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
14
|
from typing import Any, Dict, List
|
|
15
15
|
|
|
16
|
-
import numpy as np
|
|
17
|
-
|
|
18
16
|
from camel.loaders import UnstructuredIO
|
|
19
17
|
from camel.retrievers import BaseRetriever
|
|
20
18
|
from camel.utils import dependencies_required
|
|
@@ -106,6 +104,7 @@ class BM25Retriever(BaseRetriever):
|
|
|
106
104
|
model has not been initialized by calling `process`
|
|
107
105
|
first.
|
|
108
106
|
"""
|
|
107
|
+
import numpy as np
|
|
109
108
|
|
|
110
109
|
if top_k <= 0:
|
|
111
110
|
raise ValueError("top_k must be a positive integer.")
|
|
@@ -13,8 +13,6 @@
|
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
14
|
from typing import Any, Collection, Dict, List, Optional, Sequence, Union
|
|
15
15
|
|
|
16
|
-
import numpy as np
|
|
17
|
-
|
|
18
16
|
from camel.embeddings import BaseEmbedding
|
|
19
17
|
from camel.retrievers import BaseRetriever, BM25Retriever, VectorRetriever
|
|
20
18
|
from camel.storages import BaseVectorStorage
|
|
@@ -96,6 +94,8 @@ class HybridRetriever(BaseRetriever):
|
|
|
96
94
|
https://medium.com/@devalshah1619/mathematical-intuition-behind-reciprocal-rank-fusion-rrf-explained-in-2-mins-002df0cc5e2a
|
|
97
95
|
https://colab.research.google.com/drive/1iwVJrN96fiyycxN1pBqWlEr_4EPiGdGy#scrollTo=0qh83qGV2dY8
|
|
98
96
|
"""
|
|
97
|
+
import numpy as np
|
|
98
|
+
|
|
99
99
|
text_to_id = {}
|
|
100
100
|
id_to_info = {}
|
|
101
101
|
current_id = 1
|
|
@@ -16,8 +16,6 @@ import json
|
|
|
16
16
|
import logging
|
|
17
17
|
from typing import TYPE_CHECKING, Any, Dict, List, Literal, Optional
|
|
18
18
|
|
|
19
|
-
from sqlalchemy import JSON, Column, Integer
|
|
20
|
-
|
|
21
19
|
if TYPE_CHECKING:
|
|
22
20
|
from pyobvector.client import ObVecClient
|
|
23
21
|
|
|
@@ -80,6 +78,7 @@ class OceanBaseStorage(BaseVectorStorage):
|
|
|
80
78
|
IndexParams,
|
|
81
79
|
)
|
|
82
80
|
from pyobvector.schema import VECTOR
|
|
81
|
+
from sqlalchemy import JSON, Column, Integer
|
|
83
82
|
|
|
84
83
|
self.vector_dim: int = vector_dim
|
|
85
84
|
self.table_name: str = table_name
|
|
@@ -11,6 +11,10 @@
|
|
|
11
11
|
# See the License for the specific language governing permissions and
|
|
12
12
|
# limitations under the License.
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
|
+
|
|
15
|
+
# Enables postponed evaluation of annotations (for string-based type hints)
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
14
18
|
import asyncio
|
|
15
19
|
import datetime
|
|
16
20
|
import io
|
|
@@ -1336,7 +1340,7 @@ class AsyncBrowserToolkit(BaseToolkit):
|
|
|
1336
1340
|
|
|
1337
1341
|
def _initialize_agent(self) -> Tuple["ChatAgent", "ChatAgent"]:
|
|
1338
1342
|
r"""Initialize the agent."""
|
|
1339
|
-
from camel.agents import ChatAgent
|
|
1343
|
+
from camel.agents.chat_agent import ChatAgent
|
|
1340
1344
|
|
|
1341
1345
|
if self.web_agent_model is None:
|
|
1342
1346
|
web_agent_model = ModelFactory.create(
|
|
@@ -12,6 +12,9 @@
|
|
|
12
12
|
# limitations under the License.
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
14
|
|
|
15
|
+
# Enables postponed evaluation of annotations (for string-based type hints)
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
15
18
|
import datetime
|
|
16
19
|
import io
|
|
17
20
|
import json
|
|
@@ -38,8 +41,6 @@ from typing import (
|
|
|
38
41
|
|
|
39
42
|
from PIL import Image, ImageDraw, ImageFont
|
|
40
43
|
|
|
41
|
-
if TYPE_CHECKING:
|
|
42
|
-
from camel.agents import ChatAgent
|
|
43
44
|
from camel.logger import get_logger
|
|
44
45
|
from camel.messages import BaseMessage
|
|
45
46
|
from camel.models import BaseModelBackend, ModelFactory
|
|
@@ -53,6 +54,9 @@ from camel.utils import (
|
|
|
53
54
|
sanitize_filename,
|
|
54
55
|
)
|
|
55
56
|
|
|
57
|
+
if TYPE_CHECKING:
|
|
58
|
+
from camel.agents import ChatAgent
|
|
59
|
+
|
|
56
60
|
logger = get_logger(__name__)
|
|
57
61
|
|
|
58
62
|
TOP_NO_LABEL_ZONE = 20
|
|
@@ -577,7 +581,6 @@ class BaseBrowser:
|
|
|
577
581
|
image and the path to the image file if saved, otherwise
|
|
578
582
|
:obj:`None`.
|
|
579
583
|
"""
|
|
580
|
-
|
|
581
584
|
image_data = self.page.screenshot(timeout=60000)
|
|
582
585
|
image = Image.open(io.BytesIO(image_data))
|
|
583
586
|
|
|
@@ -11,6 +11,10 @@
|
|
|
11
11
|
# See the License for the specific language governing permissions and
|
|
12
12
|
# limitations under the License.
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
|
+
|
|
15
|
+
# Enables postponed evaluation of annotations (for string-based type hints)
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
14
18
|
import base64
|
|
15
19
|
import os
|
|
16
20
|
import uuid
|
|
@@ -12,15 +12,20 @@
|
|
|
12
12
|
# limitations under the License.
|
|
13
13
|
# ========= Copyright 2023-2024 @ CAMEL-AI.org. All Rights Reserved. =========
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
# Enables postponed evaluation of annotations (for string-based type hints)
|
|
16
|
+
from __future__ import annotations
|
|
16
17
|
|
|
17
|
-
import
|
|
18
|
+
from typing import TYPE_CHECKING, List, Optional
|
|
18
19
|
|
|
19
20
|
from camel.logger import get_logger
|
|
20
21
|
from camel.toolkits.base import BaseToolkit
|
|
21
22
|
from camel.toolkits.function_tool import FunctionTool
|
|
22
23
|
from camel.utils import MCPServer
|
|
23
24
|
|
|
25
|
+
# Import only for type hints (not executed at runtime)
|
|
26
|
+
if TYPE_CHECKING:
|
|
27
|
+
import pandas as pd
|
|
28
|
+
|
|
24
29
|
logger = get_logger(__name__)
|
|
25
30
|
|
|
26
31
|
|
|
@@ -71,6 +76,7 @@ class ExcelToolkit(BaseToolkit):
|
|
|
71
76
|
Returns:
|
|
72
77
|
str: Extracted excel information, including details of each sheet.
|
|
73
78
|
"""
|
|
79
|
+
import pandas as pd
|
|
74
80
|
from openpyxl import load_workbook
|
|
75
81
|
from xls2xlsx import XLS2XLSX
|
|
76
82
|
|