mirror of
https://github.com/FoundationAgents/MetaGPT.git
synced 2026-07-20 16:51:07 +02:00
Format import according to isort
This commit is contained in:
parent
b72b6adbac
commit
0722257cd8
88 changed files with 232 additions and 159 deletions
|
|
@ -9,20 +9,19 @@ from enum import Enum
|
|||
|
||||
from metagpt.actions.action import Action
|
||||
from metagpt.actions.action_output import ActionOutput
|
||||
|
||||
from metagpt.actions.write_prd import WritePRD
|
||||
from metagpt.actions.write_prd_review import WritePRDReview
|
||||
from metagpt.actions.add_requirement import BossRequirement
|
||||
from metagpt.actions.debug_error import DebugError
|
||||
from metagpt.actions.design_api import WriteDesign
|
||||
from metagpt.actions.design_api_review import DesignReview
|
||||
from metagpt.actions.design_filenames import DesignFilenames
|
||||
from metagpt.actions.project_management import AssignTasks, WriteTasks
|
||||
from metagpt.actions.run_code import RunCode
|
||||
from metagpt.actions.search_and_summarize import SearchAndSummarize
|
||||
from metagpt.actions.write_code import WriteCode
|
||||
from metagpt.actions.write_code_review import WriteCodeReview
|
||||
from metagpt.actions.write_prd import WritePRD
|
||||
from metagpt.actions.write_prd_review import WritePRDReview
|
||||
from metagpt.actions.write_test import WriteTest
|
||||
from metagpt.actions.run_code import RunCode
|
||||
from metagpt.actions.debug_error import DebugError
|
||||
from metagpt.actions.project_management import WriteTasks, AssignTasks
|
||||
from metagpt.actions.add_requirement import BossRequirement
|
||||
from metagpt.actions.search_and_summarize import SearchAndSummarize
|
||||
|
||||
|
||||
class ActionType(Enum):
|
||||
|
|
|
|||
|
|
@ -5,13 +5,14 @@
|
|||
@Author : alexanderwu
|
||||
@File : action.py
|
||||
"""
|
||||
from typing import Optional
|
||||
from abc import ABC
|
||||
from typing import Optional
|
||||
|
||||
from metagpt.llm import LLM
|
||||
from metagpt.actions.action_output import ActionOutput
|
||||
from tenacity import retry, stop_after_attempt, wait_fixed
|
||||
from pydantic import BaseModel
|
||||
from tenacity import retry, stop_after_attempt, wait_fixed
|
||||
|
||||
from metagpt.actions.action_output import ActionOutput
|
||||
from metagpt.llm import LLM
|
||||
from metagpt.utils.common import OutputParser
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -6,9 +6,10 @@
|
|||
@File : action_output
|
||||
"""
|
||||
|
||||
from pydantic import create_model, validator, root_validator, BaseModel
|
||||
from typing import Dict, Type
|
||||
|
||||
from pydantic import BaseModel, create_model, root_validator, validator
|
||||
|
||||
|
||||
class ActionOutput:
|
||||
content: str
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@
|
|||
|
||||
from metagpt.actions import Action
|
||||
|
||||
|
||||
PROMPT = """You are an AI developer, trying to write a program that generates code for users based on their intentions.
|
||||
|
||||
For the user's prompt:
|
||||
|
|
|
|||
|
|
@ -5,8 +5,9 @@
|
|||
@Author : Leo Xiao
|
||||
@File : azure_tts.py
|
||||
"""
|
||||
from azure.cognitiveservices.speech import AudioConfig, SpeechConfig, SpeechSynthesizer
|
||||
|
||||
from metagpt.actions.action import Action
|
||||
from azure.cognitiveservices.speech import SpeechConfig, SpeechSynthesizer, AudioConfig
|
||||
from metagpt.config import Config
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -9,12 +9,11 @@ import shutil
|
|||
from pathlib import Path
|
||||
from typing import List, Tuple
|
||||
|
||||
from metagpt.actions import ActionOutput
|
||||
from metagpt.actions import Action
|
||||
from metagpt.actions import Action, ActionOutput
|
||||
from metagpt.const import WORKSPACE_ROOT
|
||||
from metagpt.utils.common import CodeParser
|
||||
from metagpt.schema import Message
|
||||
from metagpt.logs import logger
|
||||
from metagpt.schema import Message
|
||||
from metagpt.utils.common import CodeParser
|
||||
from metagpt.utils.mermaid import mermaid_to_file
|
||||
|
||||
PROMPT_TEMPLATE = """
|
||||
|
|
|
|||
|
|
@ -5,9 +5,8 @@
|
|||
@Author : alexanderwu
|
||||
@File : design_filenames.py
|
||||
"""
|
||||
from metagpt.logs import logger
|
||||
from metagpt.actions import Action
|
||||
|
||||
from metagpt.logs import logger
|
||||
|
||||
PROMPT = """You are an AI developer, trying to write a program that generates code for users based on their intentions.
|
||||
When given their intentions, provide a complete and exhaustive list of file paths needed to write the program for the user.
|
||||
|
|
|
|||
|
|
@ -7,12 +7,13 @@
|
|||
"""
|
||||
from typing import List, Tuple
|
||||
|
||||
from tenacity import retry, stop_after_attempt, wait_fixed
|
||||
|
||||
from metagpt.actions.action import Action
|
||||
from metagpt.actions.action_output import ActionOutput
|
||||
from metagpt.const import WORKSPACE_ROOT
|
||||
from metagpt.logs import logger
|
||||
from metagpt.utils.common import OutputParser, CodeParser
|
||||
from tenacity import retry, stop_after_attempt, wait_fixed
|
||||
from metagpt.utils.common import CodeParser, OutputParser
|
||||
|
||||
PROMPT_TEMPLATE = '''
|
||||
# Context
|
||||
|
|
|
|||
|
|
@ -7,13 +7,12 @@
|
|||
"""
|
||||
import asyncio
|
||||
|
||||
from metagpt.logs import logger
|
||||
from metagpt.config import SearchEngineType, Config
|
||||
from metagpt.actions import Action
|
||||
from metagpt.config import Config, SearchEngineType
|
||||
from metagpt.logs import logger
|
||||
from metagpt.schema import Message
|
||||
from metagpt.tools.search_engine import SearchEngine
|
||||
|
||||
|
||||
SEARCH_AND_SUMMARIZE_SYSTEM = """### Requirements
|
||||
1. Please summarize the latest dialogue based on the reference information (secondary) and dialogue history (primary). Do not include text that is irrelevant to the conversation.
|
||||
- The context is for reference only. If it is irrelevant to the user's search request history, please reduce its reference and usage.
|
||||
|
|
|
|||
|
|
@ -5,12 +5,17 @@
|
|||
@Author : alexanderwu
|
||||
@File : write_prd.py
|
||||
"""
|
||||
from metagpt.actions import Action, ActionOutput
|
||||
from metagpt.actions.search_and_summarize import SEARCH_AND_SUMMARIZE_SYSTEM, SearchAndSummarize, \
|
||||
SEARCH_AND_SUMMARIZE_PROMPT, SEARCH_AND_SUMMARIZE_SYSTEM_EN_US
|
||||
from metagpt.logs import logger
|
||||
from typing import List, Tuple
|
||||
|
||||
from metagpt.actions import Action, ActionOutput
|
||||
from metagpt.actions.search_and_summarize import (
|
||||
SEARCH_AND_SUMMARIZE_PROMPT,
|
||||
SEARCH_AND_SUMMARIZE_SYSTEM,
|
||||
SEARCH_AND_SUMMARIZE_SYSTEM_EN_US,
|
||||
SearchAndSummarize,
|
||||
)
|
||||
from metagpt.logs import logger
|
||||
|
||||
PROMPT_TEMPLATE = """
|
||||
# Context
|
||||
## Original Requirements
|
||||
|
|
|
|||
|
|
@ -7,11 +7,10 @@ import os
|
|||
|
||||
import yaml
|
||||
|
||||
from metagpt.logs import logger
|
||||
|
||||
from metagpt.const import PROJECT_ROOT
|
||||
from metagpt.utils.singleton import Singleton
|
||||
from metagpt.logs import logger
|
||||
from metagpt.tools import SearchEngineType
|
||||
from metagpt.utils.singleton import Singleton
|
||||
|
||||
|
||||
class NotConfiguredException(Exception):
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@
|
|||
@Author : alexanderwu
|
||||
@File : chromadb_store.py
|
||||
"""
|
||||
from sentence_transformers import SentenceTransformer
|
||||
import chromadb
|
||||
from sentence_transformers import SentenceTransformer
|
||||
|
||||
|
||||
class ChromaStore:
|
||||
|
|
|
|||
|
|
@ -9,11 +9,13 @@ from pathlib import Path
|
|||
|
||||
import numpy as np
|
||||
import pandas as pd
|
||||
from tqdm import tqdm
|
||||
|
||||
from langchain.document_loaders import UnstructuredWordDocumentLoader, UnstructuredPDFLoader
|
||||
from langchain.document_loaders import TextLoader
|
||||
from langchain.document_loaders import (
|
||||
TextLoader,
|
||||
UnstructuredPDFLoader,
|
||||
UnstructuredWordDocumentLoader,
|
||||
)
|
||||
from langchain.text_splitter import CharacterTextSplitter
|
||||
from tqdm import tqdm
|
||||
|
||||
|
||||
def validate_cols(content_col: str, df: pd.DataFrame):
|
||||
|
|
|
|||
|
|
@ -5,20 +5,20 @@
|
|||
@Author : alexanderwu
|
||||
@File : faiss_store.py
|
||||
"""
|
||||
from typing import Optional
|
||||
from pathlib import Path
|
||||
import pickle
|
||||
from pathlib import Path
|
||||
from typing import Optional
|
||||
|
||||
import faiss
|
||||
from langchain.vectorstores import FAISS
|
||||
from langchain.embeddings import OpenAIEmbeddings
|
||||
import pandas as pd
|
||||
from langchain.embeddings import OpenAIEmbeddings
|
||||
from langchain.vectorstores import FAISS
|
||||
from tqdm import tqdm
|
||||
|
||||
from metagpt.logs import logger
|
||||
from metagpt.const import DATA_PATH
|
||||
from metagpt.document_store.document import Document
|
||||
from metagpt.document_store.base_store import LocalStore
|
||||
from metagpt.document_store.document import Document
|
||||
from metagpt.logs import logger
|
||||
|
||||
|
||||
class FaissStore(LocalStore):
|
||||
|
|
|
|||
|
|
@ -6,10 +6,11 @@
|
|||
@File : milvus_store.py
|
||||
"""
|
||||
from typing import TypedDict
|
||||
import numpy as np
|
||||
from pymilvus import connections, Collection, CollectionSchema, FieldSchema, DataType
|
||||
from metagpt.document_store.base_store import BaseStore
|
||||
|
||||
import numpy as np
|
||||
from pymilvus import Collection, CollectionSchema, DataType, FieldSchema, connections
|
||||
|
||||
from metagpt.document_store.base_store import BaseStore
|
||||
|
||||
type_mapping = {
|
||||
int: DataType.INT64,
|
||||
|
|
|
|||
|
|
@ -6,21 +6,13 @@
|
|||
@File : environment.py
|
||||
"""
|
||||
import asyncio
|
||||
|
||||
from typing import Iterable
|
||||
|
||||
from pydantic import (
|
||||
BaseModel,
|
||||
BaseSettings,
|
||||
PyObject,
|
||||
RedisDsn,
|
||||
PostgresDsn,
|
||||
Field,
|
||||
)
|
||||
from pydantic import BaseModel, BaseSettings, Field, PostgresDsn, PyObject, RedisDsn
|
||||
|
||||
from metagpt.memory import Memory
|
||||
from metagpt.roles import Role
|
||||
from metagpt.schema import Message
|
||||
from metagpt.memory import Memory
|
||||
|
||||
|
||||
class Environment(BaseModel):
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
"""
|
||||
|
||||
import inspect
|
||||
|
||||
import metagpt # replace with your module
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@
|
|||
@File : llm.py
|
||||
"""
|
||||
|
||||
from metagpt.provider.openai_api import OpenAIGPTAPI as LLM
|
||||
from metagpt.provider.anthropic_api import Claude2 as Claude
|
||||
from metagpt.provider.openai_api import OpenAIGPTAPI as LLM
|
||||
|
||||
DEFAULT_LLM = LLM()
|
||||
CLAUDE_LLM = Claude()
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
"""
|
||||
|
||||
import sys
|
||||
|
||||
from loguru import logger as _logger
|
||||
|
||||
from metagpt.const import PROJECT_ROOT
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -6,13 +6,12 @@
|
|||
@File : skill_manager.py
|
||||
"""
|
||||
from sentence_transformers import SentenceTransformer
|
||||
from metagpt.logs import logger
|
||||
|
||||
from metagpt.const import PROMPT_PATH
|
||||
from metagpt.llm import LLM
|
||||
from metagpt.actions import Action
|
||||
from metagpt.const import PROMPT_PATH
|
||||
from metagpt.document_store.chromadb_store import ChromaStore
|
||||
|
||||
from metagpt.llm import LLM
|
||||
from metagpt.logs import logger
|
||||
|
||||
Skill = Action
|
||||
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@
|
|||
@Author : alexanderwu
|
||||
@File : manager.py
|
||||
"""
|
||||
from metagpt.logs import logger
|
||||
from metagpt.llm import LLM
|
||||
from metagpt.logs import logger
|
||||
from metagpt.schema import Message
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -7,10 +7,13 @@
|
|||
"""
|
||||
|
||||
import asyncio
|
||||
|
||||
import anthropic
|
||||
from anthropic import Anthropic
|
||||
|
||||
from metagpt.config import CONFIG
|
||||
|
||||
|
||||
class Claude2:
|
||||
def ask(self, prompt):
|
||||
client = Anthropic(api_key=CONFIG.claude_api_key)
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@
|
|||
@Author : alexanderwu
|
||||
@File : base_gpt_api.py
|
||||
"""
|
||||
from abc import abstractmethod
|
||||
from typing import Optional
|
||||
|
||||
from abc import abstractmethod
|
||||
from metagpt.provider.base_chatbot import BaseChatbot
|
||||
from metagpt.logs import logger
|
||||
from metagpt.provider.base_chatbot import BaseChatbot
|
||||
|
||||
|
||||
class BaseGPTAPI(BaseChatbot):
|
||||
|
|
|
|||
|
|
@ -5,17 +5,22 @@
|
|||
@Author : alexanderwu
|
||||
@File : openai.py
|
||||
"""
|
||||
from typing import NamedTuple
|
||||
from functools import wraps
|
||||
import asyncio
|
||||
import time
|
||||
import openai
|
||||
from metagpt.logs import logger
|
||||
from functools import wraps
|
||||
from typing import NamedTuple
|
||||
|
||||
import openai
|
||||
|
||||
from metagpt.provider.base_gpt_api import BaseGPTAPI
|
||||
from metagpt.config import CONFIG
|
||||
from metagpt.logs import logger
|
||||
from metagpt.provider.base_gpt_api import BaseGPTAPI
|
||||
from metagpt.utils.singleton import Singleton
|
||||
from metagpt.utils.token_counter import count_message_tokens, TOKEN_COSTS, count_string_tokens
|
||||
from metagpt.utils.token_counter import (
|
||||
TOKEN_COSTS,
|
||||
count_message_tokens,
|
||||
count_string_tokens,
|
||||
)
|
||||
|
||||
|
||||
def retry(max_retries):
|
||||
|
|
|
|||
|
|
@ -6,12 +6,12 @@
|
|||
@File : __init__.py
|
||||
"""
|
||||
|
||||
from metagpt.roles.role import Role
|
||||
from metagpt.roles.architect import Architect
|
||||
from metagpt.roles.customer_service import CustomerService
|
||||
from metagpt.roles.engineer import Engineer
|
||||
from metagpt.roles.product_manager import ProductManager
|
||||
from metagpt.roles.project_manager import ProjectManager
|
||||
from metagpt.roles.engineer import Engineer
|
||||
from metagpt.roles.qa_engineer import QaEngineer
|
||||
from metagpt.roles.seacher import Searcher
|
||||
from metagpt.roles.role import Role
|
||||
from metagpt.roles.sales import Sales
|
||||
from metagpt.roles.customer_service import CustomerService
|
||||
from metagpt.roles.seacher import Searcher
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@
|
|||
@File : architect.py
|
||||
"""
|
||||
|
||||
from metagpt.actions import DesignFilenames, WriteDesign, WritePRD
|
||||
from metagpt.roles import Role
|
||||
from metagpt.actions import WriteDesign, WritePRD, DesignFilenames
|
||||
|
||||
|
||||
class Architect(Role):
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@
|
|||
@File : sales.py
|
||||
"""
|
||||
from metagpt.roles import Sales
|
||||
|
||||
# from metagpt.actions import SearchAndSummarize
|
||||
# from metagpt.tools import SearchEngineType
|
||||
|
||||
|
|
|
|||
|
|
@ -5,19 +5,19 @@
|
|||
@Author : alexanderwu
|
||||
@File : engineer.py
|
||||
"""
|
||||
import ast
|
||||
import asyncio
|
||||
import re
|
||||
import ast
|
||||
import shutil
|
||||
from collections import OrderedDict
|
||||
from pathlib import Path
|
||||
|
||||
from metagpt.actions import DebugError, RunCode, WriteCode, WriteDesign, WriteTasks
|
||||
from metagpt.const import WORKSPACE_ROOT
|
||||
from metagpt.logs import logger
|
||||
from metagpt.roles import Role
|
||||
from metagpt.actions import WriteCode, RunCode, DebugError, WriteTasks, WriteDesign
|
||||
from metagpt.schema import Message
|
||||
from metagpt.utils.common import CodeParser
|
||||
from collections import OrderedDict
|
||||
|
||||
|
||||
async def gather_ordered_k(coros, k) -> list:
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@
|
|||
@Author : alexanderwu
|
||||
@File : product_manager.py
|
||||
"""
|
||||
from metagpt.actions import BossRequirement, WritePRD
|
||||
from metagpt.roles import Role
|
||||
from metagpt.actions import WritePRD, BossRequirement
|
||||
from metagpt.schema import Message
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@
|
|||
@Author : alexanderwu
|
||||
@File : project_manager.py
|
||||
"""
|
||||
from metagpt.actions import AssignTasks, WriteDesign, WriteTasks
|
||||
from metagpt.roles import Role
|
||||
from metagpt.actions import WriteTasks, AssignTasks, WriteDesign
|
||||
|
||||
|
||||
class ProjectManager(Role):
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@
|
|||
@Author : alexanderwu
|
||||
@File : qa_engineer.py
|
||||
"""
|
||||
from metagpt.actions.run_code import RunCode
|
||||
from metagpt.actions import WriteTest
|
||||
from metagpt.actions.run_code import RunCode
|
||||
from metagpt.roles import Role
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -6,17 +6,17 @@
|
|||
@File : role.py
|
||||
"""
|
||||
from __future__ import annotations
|
||||
from typing import Type, Iterable
|
||||
|
||||
from typing import Iterable, Type
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from metagpt.logs import logger
|
||||
|
||||
# from metagpt.environment import Environment
|
||||
from metagpt.actions import Action, ActionOutput
|
||||
from metagpt.llm import LLM
|
||||
from metagpt.schema import Message
|
||||
from metagpt.logs import logger
|
||||
from metagpt.memory import Memory
|
||||
from metagpt.schema import Message
|
||||
|
||||
PREFIX_TEMPLATE = """You are a {profile}, named {name}, your goal is {goal}, and the constraint is {constraints}. """
|
||||
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@
|
|||
@Author : alexanderwu
|
||||
@File : sales.py
|
||||
"""
|
||||
from metagpt.roles import Role
|
||||
from metagpt.actions import SearchAndSummarize
|
||||
from metagpt.roles import Role
|
||||
from metagpt.tools import SearchEngineType
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -5,12 +5,12 @@
|
|||
@Author : alexanderwu
|
||||
@File : seacher.py
|
||||
"""
|
||||
from metagpt.actions import ActionOutput, SearchAndSummarize
|
||||
from metagpt.logs import logger
|
||||
|
||||
from metagpt.roles import Role
|
||||
from metagpt.actions import SearchAndSummarize, ActionOutput
|
||||
from metagpt.tools import SearchEngineType
|
||||
from metagpt.schema import Message
|
||||
from metagpt.tools import SearchEngineType
|
||||
|
||||
|
||||
class Searcher(Role):
|
||||
def __init__(self, name='Alice', profile='Smart Assistant', goal='Provide search services for users',
|
||||
|
|
|
|||
|
|
@ -6,12 +6,13 @@
|
|||
@File : schema.py
|
||||
"""
|
||||
from __future__ import annotations
|
||||
|
||||
from dataclasses import dataclass, field
|
||||
from typing import Type, TypedDict
|
||||
|
||||
from metagpt.logs import logger
|
||||
from pydantic import BaseModel
|
||||
|
||||
from metagpt.logs import logger
|
||||
|
||||
|
||||
class RawMessage(TypedDict):
|
||||
|
|
|
|||
|
|
@ -7,11 +7,18 @@
|
|||
"""
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from metagpt.config import CONFIG
|
||||
from metagpt.actions import BossRequirement
|
||||
from metagpt.logs import logger
|
||||
from metagpt.config import CONFIG
|
||||
from metagpt.environment import Environment
|
||||
from metagpt.roles import ProductManager, Architect, Engineer, QaEngineer, ProjectManager, Role
|
||||
from metagpt.logs import logger
|
||||
from metagpt.roles import (
|
||||
Architect,
|
||||
Engineer,
|
||||
ProductManager,
|
||||
ProjectManager,
|
||||
QaEngineer,
|
||||
Role,
|
||||
)
|
||||
from metagpt.schema import Message
|
||||
from metagpt.utils.common import NoMoneyException
|
||||
|
||||
|
|
|
|||
|
|
@ -9,10 +9,10 @@ from __future__ import annotations
|
|||
|
||||
import json
|
||||
|
||||
from metagpt.logs import logger
|
||||
from duckduckgo_search import ddg
|
||||
|
||||
from metagpt.config import Config
|
||||
from metagpt.logs import logger
|
||||
from metagpt.tools.search_engine_serpapi import SerpAPIWrapper
|
||||
from metagpt.tools.search_engine_serper import SerperWrapper
|
||||
|
||||
|
|
|
|||
|
|
@ -6,10 +6,12 @@
|
|||
@File : search_engine_meilisearch.py
|
||||
"""
|
||||
|
||||
from metagpt.logs import logger
|
||||
from typing import List
|
||||
|
||||
import meilisearch
|
||||
from meilisearch.index import Index
|
||||
from typing import List
|
||||
|
||||
from metagpt.logs import logger
|
||||
|
||||
|
||||
class DataSource:
|
||||
|
|
|
|||
|
|
@ -6,11 +6,12 @@
|
|||
@File : search_engine_serpapi.py
|
||||
"""
|
||||
from typing import Any, Dict, Optional, Tuple
|
||||
from metagpt.logs import logger
|
||||
|
||||
import aiohttp
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from metagpt.config import Config
|
||||
from metagpt.logs import logger
|
||||
|
||||
|
||||
class SerpAPIWrapper(BaseModel):
|
||||
|
|
|
|||
|
|
@ -5,13 +5,14 @@
|
|||
@Author : alexanderwu
|
||||
@File : search_engine_serpapi.py
|
||||
"""
|
||||
from typing import Any, Dict, Optional, Tuple
|
||||
from metagpt.logs import logger
|
||||
import aiohttp
|
||||
import json
|
||||
from typing import Any, Dict, Optional, Tuple
|
||||
|
||||
import aiohttp
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from metagpt.config import Config
|
||||
from metagpt.logs import logger
|
||||
|
||||
|
||||
class SerperWrapper(BaseModel):
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@ from pathlib import Path
|
|||
|
||||
from metagpt.provider.openai_api import OpenAIGPTAPI as GPTAPI
|
||||
|
||||
|
||||
ICL_SAMPLE = '''接口定义:
|
||||
```text
|
||||
接口名称:元素打标签
|
||||
|
|
|
|||
|
|
@ -6,6 +6,10 @@
|
|||
@File : __init__.py
|
||||
"""
|
||||
|
||||
from metagpt.utils.singleton import Singleton
|
||||
from metagpt.utils.read_document import read_docx
|
||||
from metagpt.utils.token_counter import TOKEN_COSTS, count_string_tokens, count_message_tokens
|
||||
from metagpt.utils.singleton import Singleton
|
||||
from metagpt.utils.token_counter import (
|
||||
TOKEN_COSTS,
|
||||
count_message_tokens,
|
||||
count_string_tokens,
|
||||
)
|
||||
|
|
|
|||
|
|
@ -5,12 +5,12 @@
|
|||
@Author : alexanderwu
|
||||
@File : common.py
|
||||
"""
|
||||
import os
|
||||
import ast
|
||||
import inspect
|
||||
import os
|
||||
import re
|
||||
from typing import List, Tuple, Union
|
||||
|
||||
from typing import Union, List, Tuple
|
||||
from metagpt.logs import logger
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@
|
|||
@Author : alexanderwu
|
||||
@File : mermaid.py
|
||||
"""
|
||||
import subprocess
|
||||
import os
|
||||
import subprocess
|
||||
from pathlib import Path
|
||||
|
||||
from metagpt.const import PROJECT_ROOT
|
||||
|
|
|
|||
|
|
@ -9,8 +9,8 @@ ref2: https://github.com/Significant-Gravitas/Auto-GPT/blob/master/autogpt/llm/t
|
|||
ref3: https://github.com/hwchase17/langchain/blob/master/langchain/chat_models/openai.py
|
||||
"""
|
||||
import tiktoken
|
||||
from metagpt.schema import RawMessage
|
||||
|
||||
from metagpt.schema import RawMessage
|
||||
|
||||
TOKEN_COSTS = {
|
||||
"gpt-3.5-turbo": {"prompt": 0.0015, "completion": 0.002},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue