camel-ai 0.1.9__tar.gz → 0.2.0__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.1.9 → camel_ai-0.2.0}/PKG-INFO +3 -2
- {camel_ai-0.1.9 → camel_ai-0.2.0}/README.md +1 -1
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/__init__.py +1 -1
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/chat_agent.py +10 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/openai_model.py +16 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/__init__.py +15 -24
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/google_maps_toolkit.py +0 -7
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/linkedin_toolkit.py +0 -3
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_toolkit.py +0 -3
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/reddit_toolkit.py +0 -3
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/retrieval_toolkit.py +0 -4
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/slack_toolkit.py +0 -3
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/twitter_toolkit.py +2 -5
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/utils/token_counting.py +8 -2
- {camel_ai-0.1.9 → camel_ai-0.2.0}/pyproject.toml +5 -4
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/critic_agent.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/deductive_reasoner_agent.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/embodied_agent.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/knowledge_graph_agent.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/role_assignment_agent.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/search_agent.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/task_agent.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/tool_agents/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/tool_agents/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/agents/tool_agents/hugging_face_tool_agent.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/anthropic_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/base_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/gemini_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/groq_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/litellm_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/mistral_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/ollama_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/openai_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/reka_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/samba_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/togetherai_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/vllm_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/configs/zhipuai_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/embeddings/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/embeddings/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/embeddings/mistral_embedding.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/embeddings/openai_embedding.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/embeddings/sentence_transformers_embeddings.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/embeddings/vlm_embedding.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/generators.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/human.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/interpreters/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/interpreters/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/interpreters/docker_interpreter.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/interpreters/internal_python_interpreter.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/interpreters/interpreter_error.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/interpreters/ipython_interpreter.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/interpreters/subprocess_interpreter.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/loaders/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/loaders/base_io.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/loaders/firecrawl_reader.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/loaders/jina_url_reader.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/loaders/unstructured_io.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/memories/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/memories/agent_memories.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/memories/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/memories/blocks/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/memories/blocks/chat_history_block.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/memories/blocks/vectordb_block.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/memories/context_creators/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/memories/context_creators/score_based.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/memories/records.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/messages/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/messages/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/messages/func_message.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/anthropic_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/azure_openai_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/base_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/gemini_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/groq_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/litellm_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/mistral_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/model_factory.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/nemotron_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/ollama_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/open_source_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/openai_audio_models.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/openai_compatibility_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/reka_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/samba_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/stub_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/togetherai_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/vllm_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/models/zhipuai_model.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/ai_society.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/code.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/evaluation.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/generate_text_embedding_data.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/image_craft.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/misalignment.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/multi_condition_image_craft.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/object_recognition.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/prompt_templates.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/role_description_prompt_template.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/solution_extraction.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/task_prompt_template.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/translation.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/prompts/video_description_prompt.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/responses/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/responses/agent_responses.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/retrievers/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/retrievers/auto_retriever.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/retrievers/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/retrievers/bm25_retriever.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/retrievers/cohere_rerank_retriever.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/retrievers/vector_retriever.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/societies/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/societies/babyagi_playing.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/societies/role_playing.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/graph_storages/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/graph_storages/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/graph_storages/graph_element.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/graph_storages/neo4j_graph.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/key_value_storages/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/key_value_storages/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/key_value_storages/in_memory.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/key_value_storages/json.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/key_value_storages/redis.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/object_storages/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/object_storages/amazon_s3.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/object_storages/azure_blob.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/object_storages/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/object_storages/google_cloud.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/vectordb_storages/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/vectordb_storages/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/vectordb_storages/milvus.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/storages/vectordb_storages/qdrant.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/tasks/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/tasks/task.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/tasks/task_prompt.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/terminators/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/terminators/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/terminators/response_terminator.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/terminators/token_limit_terminator.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/code_execution.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/dalle_toolkit.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/github_toolkit.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/math_toolkit.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/biztoc/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/biztoc/ai-plugin.json +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/biztoc/openapi.yaml +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/coursera/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/coursera/openapi.yaml +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/create_qr_code/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/create_qr_code/openapi.yaml +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/klarna/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/klarna/openapi.yaml +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/nasa_apod/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/nasa_apod/openapi.yaml +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/outschool/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/outschool/ai-plugin.json +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/outschool/openapi.yaml +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/outschool/paths/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/outschool/paths/get_classes.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/outschool/paths/search_teachers.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/security_config.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/speak/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/speak/openapi.yaml +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/web_scraper/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/web_scraper/ai-plugin.json +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/web_scraper/openapi.yaml +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/web_scraper/paths/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/web_scraper/paths/scraper.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/openai_function.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/search_toolkit.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/weather_toolkit.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/types/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/types/enums.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/types/openai_types.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/utils/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/utils/async_func.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/utils/commons.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/utils/constants.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/__init__.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/base.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/manager_node.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/role_playing_node.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/single_agent_node.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/task_channel.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/utils.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/worker_node.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/workforce.py +0 -0
- {camel_ai-0.1.9 → camel_ai-0.2.0}/camel/workforce/workforce_prompt.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: camel-ai
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2.0
|
|
4
4
|
Summary: Communicative Agents for AI Society Study
|
|
5
5
|
Home-page: https://www.camel-ai.org/
|
|
6
6
|
License: Apache-2.0
|
|
@@ -59,6 +59,7 @@ Requires-Dist: numpy (>=1,<2)
|
|
|
59
59
|
Requires-Dist: openai (>=1.45.0,<2.0.0)
|
|
60
60
|
Requires-Dist: openapi-spec-validator (>=0.7.1,<0.8.0) ; extra == "tools" or extra == "all"
|
|
61
61
|
Requires-Dist: opencv-python (>=4,<5) ; extra == "huggingface-agent" or extra == "all"
|
|
62
|
+
Requires-Dist: pandoc
|
|
62
63
|
Requires-Dist: pathlib (>=1.0.1,<2.0.0)
|
|
63
64
|
Requires-Dist: pillow (>=10.2.0,<11.0.0) ; extra == "tools" or extra == "all"
|
|
64
65
|
Requires-Dist: prance (>=23.6.21.0,<24.0.0.0) ; extra == "tools" or extra == "all"
|
|
@@ -213,7 +214,7 @@ conda create --name camel python=3.10
|
|
|
213
214
|
conda activate camel
|
|
214
215
|
|
|
215
216
|
# Clone github repo
|
|
216
|
-
git clone -b v0.
|
|
217
|
+
git clone -b v0.2.0 https://github.com/camel-ai/camel.git
|
|
217
218
|
|
|
218
219
|
# Change directory into project directory
|
|
219
220
|
cd camel
|
|
@@ -119,7 +119,7 @@ conda create --name camel python=3.10
|
|
|
119
119
|
conda activate camel
|
|
120
120
|
|
|
121
121
|
# Clone github repo
|
|
122
|
-
git clone -b v0.
|
|
122
|
+
git clone -b v0.2.0 https://github.com/camel-ai/camel.git
|
|
123
123
|
|
|
124
124
|
# Change directory into project directory
|
|
125
125
|
cd camel
|
|
@@ -181,6 +181,16 @@ class ChatAgent(BaseAgent):
|
|
|
181
181
|
tool.get_function_name(): tool.func for tool in all_tools
|
|
182
182
|
}
|
|
183
183
|
|
|
184
|
+
# If the user hasn't configured tools in `BaseModelBackend`,
|
|
185
|
+
# the tools set from `ChatAgent` will be used.
|
|
186
|
+
# This design simplifies the interface while retaining tool-running
|
|
187
|
+
# capabilities for `BaseModelBackend`.
|
|
188
|
+
if all_tools and not self.model_backend.model_config_dict['tools']:
|
|
189
|
+
tool_schema_list = [
|
|
190
|
+
tool.get_openai_tool_schema() for tool in all_tools
|
|
191
|
+
]
|
|
192
|
+
self.model_backend.model_config_dict['tools'] = tool_schema_list
|
|
193
|
+
|
|
184
194
|
self.model_config_dict = self.model_backend.model_config_dict
|
|
185
195
|
|
|
186
196
|
self.model_token_limit = token_limit or self.model_backend.token_limit
|
|
@@ -93,6 +93,22 @@ class OpenAIModel(BaseModelBackend):
|
|
|
93
93
|
`ChatCompletion` in the non-stream mode, or
|
|
94
94
|
`Stream[ChatCompletionChunk]` in the stream mode.
|
|
95
95
|
"""
|
|
96
|
+
# o1-preview and o1-mini have Beta limitations
|
|
97
|
+
# reference: https://platform.openai.com/docs/guides/reasoning
|
|
98
|
+
if self.model_type in [ModelType.O1_MINI, ModelType.O1_PREVIEW]:
|
|
99
|
+
# Remove system message that is not supported in o1 model.
|
|
100
|
+
messages = [msg for msg in messages if msg.get("role") != "system"]
|
|
101
|
+
|
|
102
|
+
# Remove unsupported parameters and reset the fixed parameters
|
|
103
|
+
del self.model_config_dict["stream"]
|
|
104
|
+
del self.model_config_dict["tools"]
|
|
105
|
+
del self.model_config_dict["tool_choice"]
|
|
106
|
+
self.model_config_dict["temperature"] = 1.0
|
|
107
|
+
self.model_config_dict["top_p"] = 1.0
|
|
108
|
+
self.model_config_dict["n"] = 1.0
|
|
109
|
+
self.model_config_dict["presence_penalty"] = 0.0
|
|
110
|
+
self.model_config_dict["frequency_penalty"] = 0.0
|
|
111
|
+
|
|
96
112
|
response = self._client.chat.completions.create(
|
|
97
113
|
messages=messages,
|
|
98
114
|
model=self.model_type.value,
|
|
@@ -19,19 +19,18 @@ from .openai_function import (
|
|
|
19
19
|
)
|
|
20
20
|
from .open_api_specs.security_config import openapi_security_config
|
|
21
21
|
|
|
22
|
-
from .google_maps_toolkit import
|
|
23
|
-
from .math_toolkit import
|
|
24
|
-
from .open_api_toolkit import
|
|
25
|
-
from .retrieval_toolkit import
|
|
26
|
-
from .search_toolkit import
|
|
27
|
-
from .twitter_toolkit import
|
|
28
|
-
from .weather_toolkit import
|
|
29
|
-
from .slack_toolkit import
|
|
30
|
-
from .dalle_toolkit import
|
|
31
|
-
from .linkedin_toolkit import
|
|
32
|
-
from .reddit_toolkit import
|
|
22
|
+
from .google_maps_toolkit import GoogleMapsToolkit
|
|
23
|
+
from .math_toolkit import MathToolkit, MATH_FUNCS
|
|
24
|
+
from .open_api_toolkit import OpenAPIToolkit
|
|
25
|
+
from .retrieval_toolkit import RetrievalToolkit
|
|
26
|
+
from .search_toolkit import SearchToolkit, SEARCH_FUNCS
|
|
27
|
+
from .twitter_toolkit import TwitterToolkit
|
|
28
|
+
from .weather_toolkit import WeatherToolkit, WEATHER_FUNCS
|
|
29
|
+
from .slack_toolkit import SlackToolkit
|
|
30
|
+
from .dalle_toolkit import DalleToolkit, DALLE_FUNCS
|
|
31
|
+
from .linkedin_toolkit import LinkedInToolkit
|
|
32
|
+
from .reddit_toolkit import RedditToolkit
|
|
33
33
|
|
|
34
|
-
from .base import BaseToolkit
|
|
35
34
|
from .code_execution import CodeExecutionToolkit
|
|
36
35
|
from .github_toolkit import GithubToolkit
|
|
37
36
|
|
|
@@ -40,18 +39,6 @@ __all__ = [
|
|
|
40
39
|
'get_openai_function_schema',
|
|
41
40
|
'get_openai_tool_schema',
|
|
42
41
|
'openapi_security_config',
|
|
43
|
-
'MATH_FUNCS',
|
|
44
|
-
'MAP_FUNCS',
|
|
45
|
-
'OPENAPI_FUNCS',
|
|
46
|
-
'RETRIEVAL_FUNCS',
|
|
47
|
-
'SEARCH_FUNCS',
|
|
48
|
-
'TWITTER_FUNCS',
|
|
49
|
-
'WEATHER_FUNCS',
|
|
50
|
-
'SLACK_FUNCS',
|
|
51
|
-
'DALLE_FUNCS',
|
|
52
|
-
'LINKEDIN_FUNCS',
|
|
53
|
-
'REDDIT_FUNCS',
|
|
54
|
-
'BaseToolkit',
|
|
55
42
|
'GithubToolkit',
|
|
56
43
|
'MathToolkit',
|
|
57
44
|
'GoogleMapsToolkit',
|
|
@@ -65,4 +52,8 @@ __all__ = [
|
|
|
65
52
|
'LinkedInToolkit',
|
|
66
53
|
'RedditToolkit',
|
|
67
54
|
'CodeExecutionToolkit',
|
|
55
|
+
'MATH_FUNCS',
|
|
56
|
+
'SEARCH_FUNCS',
|
|
57
|
+
'WEATHER_FUNCS',
|
|
58
|
+
'DALLE_FUNCS',
|
|
68
59
|
]
|
|
@@ -142,10 +142,6 @@ class GoogleMapsToolkit(BaseToolkit):
|
|
|
142
142
|
information on address completion, formatted address,
|
|
143
143
|
geographical coordinates (latitude and longitude), and metadata
|
|
144
144
|
types true for the address.
|
|
145
|
-
|
|
146
|
-
Raises:
|
|
147
|
-
ImportError: If the `googlemaps` library is not installed.
|
|
148
|
-
Exception: For unexpected errors during the address validation.
|
|
149
145
|
"""
|
|
150
146
|
addressvalidation_result = self.gmaps.addressvalidation(
|
|
151
147
|
[address],
|
|
@@ -304,6 +300,3 @@ class GoogleMapsToolkit(BaseToolkit):
|
|
|
304
300
|
OpenAIFunction(self.get_elevation),
|
|
305
301
|
OpenAIFunction(self.get_timezone),
|
|
306
302
|
]
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
MAP_FUNCS: List[OpenAIFunction] = GoogleMapsToolkit().get_tools()
|
|
@@ -410,7 +410,7 @@ class TwitterToolkit(BaseToolkit):
|
|
|
410
410
|
return TWITTER_CONSUMER_KEY, TWITTER_CONSUMER_SECRET
|
|
411
411
|
|
|
412
412
|
def _get_oauth_session(self) -> requests.Session:
|
|
413
|
-
r
|
|
413
|
+
r"""Initiates an OAuth1Session with Twitter's API and returns it.
|
|
414
414
|
|
|
415
415
|
The function first fetches a request token, then prompts the user to
|
|
416
416
|
authorize the application. After the user has authorized the
|
|
@@ -431,7 +431,7 @@ class TwitterToolkit(BaseToolkit):
|
|
|
431
431
|
Manage-Tweets/create_tweet.py
|
|
432
432
|
https://github.com/twitterdev/Twitter-API-v2-sample-code/blob/main/
|
|
433
433
|
User-Lookup/get_users_me_user_context.py
|
|
434
|
-
|
|
434
|
+
"""
|
|
435
435
|
try:
|
|
436
436
|
from requests_oauthlib import OAuth1Session
|
|
437
437
|
except ImportError:
|
|
@@ -517,6 +517,3 @@ class TwitterToolkit(BaseToolkit):
|
|
|
517
517
|
return "HTTP Exception"
|
|
518
518
|
else:
|
|
519
519
|
return "Unexpected Exception"
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
TWITTER_FUNCS: List[OpenAIFunction] = TwitterToolkit().get_tools()
|
|
@@ -193,8 +193,14 @@ def get_model_encoding(value_for_tiktoken: str):
|
|
|
193
193
|
try:
|
|
194
194
|
encoding = tiktoken.encoding_for_model(value_for_tiktoken)
|
|
195
195
|
except KeyError:
|
|
196
|
-
|
|
197
|
-
|
|
196
|
+
if value_for_tiktoken in [
|
|
197
|
+
ModelType.O1_MINI.value,
|
|
198
|
+
ModelType.O1_PREVIEW.value,
|
|
199
|
+
]:
|
|
200
|
+
encoding = tiktoken.get_encoding("o200k_base")
|
|
201
|
+
else:
|
|
202
|
+
print("Model not found. Using cl100k_base encoding.")
|
|
203
|
+
encoding = tiktoken.get_encoding("cl100k_base")
|
|
198
204
|
return encoding
|
|
199
205
|
|
|
200
206
|
|
|
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
|
|
|
4
4
|
|
|
5
5
|
[tool.poetry]
|
|
6
6
|
name = "camel-ai"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.2.0"
|
|
8
8
|
authors = ["CAMEL-AI.org"]
|
|
9
9
|
description = "Communicative Agents for AI Society Study"
|
|
10
10
|
readme = "README.md"
|
|
@@ -43,7 +43,7 @@ eval-type-backport = "0.2.0"
|
|
|
43
43
|
curl_cffi = "0.6.2"
|
|
44
44
|
jupyter_client = "^8.6.2"
|
|
45
45
|
ipykernel = "^6.0.0"
|
|
46
|
-
|
|
46
|
+
pandoc = "*"
|
|
47
47
|
pillow = "^10.2.0"
|
|
48
48
|
|
|
49
49
|
# model-platforms
|
|
@@ -281,10 +281,11 @@ types-requests = "^2"
|
|
|
281
281
|
[tool.poetry.group.docs]
|
|
282
282
|
optional = true
|
|
283
283
|
[tool.poetry.group.docs.dependencies]
|
|
284
|
-
sphinx = "^
|
|
284
|
+
sphinx = "^7"
|
|
285
285
|
sphinx_book_theme = "*"
|
|
286
|
-
recommonmark = "*"
|
|
287
286
|
docutils = "<0.20.0"
|
|
287
|
+
myst-parser = "*"
|
|
288
|
+
nbsphinx = "*"
|
|
288
289
|
|
|
289
290
|
[tool.ruff]
|
|
290
291
|
line-length = 79
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/outschool/paths/get_classes.py
RENAMED
|
File without changes
|
{camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/outschool/paths/search_teachers.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/web_scraper/paths/__init__.py
RENAMED
|
File without changes
|
{camel_ai-0.1.9 → camel_ai-0.2.0}/camel/toolkits/open_api_specs/web_scraper/paths/scraper.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|