Format import according to isort

This commit is contained in:
hongjiongteng 2023-07-22 11:28:22 +08:00
parent b72b6adbac
commit 0722257cd8
88 changed files with 232 additions and 159 deletions

View file

@ -7,9 +7,9 @@
"""
import asyncio
from metagpt.llm import LLM, Claude
from metagpt.logs import logger
from metagpt.llm import LLM
from metagpt.llm import Claude
async def main():
llm = LLM()

View file

@ -7,6 +7,7 @@
"""
import asyncio
from metagpt.config import Config
from metagpt.roles import Searcher

View file

@ -4,10 +4,11 @@
@File : search_kb.py
"""
import asyncio
from metagpt.const import DATA_PATH
from metagpt.document_store import FaissStore
from metagpt.roles import Sales
from metagpt.logs import logger
from metagpt.roles import Sales
async def search():

View file

@ -1,8 +1,10 @@
import asyncio
from metagpt.config import Config
from metagpt.roles import Searcher
from metagpt.tools import SearchEngineType
async def main():
# Serper API
await Searcher(engine = SearchEngineType.SERPER_GOOGLE).run("What are some good sun protection products?")

View file

@ -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):

View file

@ -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

View file

@ -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

View file

@ -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:

View file

@ -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

View file

@ -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 = """

View file

@ -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.

View file

@ -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

View file

@ -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.

View file

@ -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

View file

@ -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):

View file

@ -5,8 +5,8 @@
@Author : alexanderwu
@File : chromadb_store.py
"""
from sentence_transformers import SentenceTransformer
import chromadb
from sentence_transformers import SentenceTransformer
class ChromaStore:

View file

@ -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):

View file

@ -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):

View file

@ -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,

View file

@ -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):

View file

@ -7,6 +7,7 @@
"""
import inspect
import metagpt # replace with your module

View file

@ -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()

View file

@ -7,7 +7,9 @@
"""
import sys
from loguru import logger as _logger
from metagpt.const import PROJECT_ROOT

View file

@ -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

View file

@ -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

View file

@ -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)

View file

@ -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):

View file

@ -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):

View file

@ -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

View file

@ -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):

View file

@ -6,6 +6,7 @@
@File : sales.py
"""
from metagpt.roles import Sales
# from metagpt.actions import SearchAndSummarize
# from metagpt.tools import SearchEngineType

View file

@ -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:

View file

@ -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

View file

@ -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):

View file

@ -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

View file

@ -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}. """

View file

@ -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

View file

@ -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',

View file

@ -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):

View file

@ -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

View file

@ -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

View file

@ -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:

View file

@ -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):

View file

@ -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):

View file

@ -6,7 +6,6 @@ from pathlib import Path
from metagpt.provider.openai_api import OpenAIGPTAPI as GPTAPI
ICL_SAMPLE = '''接口定义:
```text
接口名称元素打标签

View file

@ -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,
)

View file

@ -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

View file

@ -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

View file

@ -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},

View file

@ -1,10 +1,10 @@
"""wutils: handy tools
"""
import subprocess
from codecs import open
from os import path
from setuptools import find_packages, setup, Command
import subprocess
from setuptools import Command, find_packages, setup
class InstallMermaidCLI(Command):

View file

@ -1,9 +1,11 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import asyncio
import fire
from metagpt.roles import Architect, Engineer, ProductManager, ProjectManager
from metagpt.software_company import SoftwareCompany
from metagpt.roles import ProjectManager, ProductManager, Architect, Engineer
async def startup(idea: str, investment: float = 3.0, n_round: int = 5):

View file

@ -7,9 +7,10 @@
"""
from unittest.mock import Mock
import pytest
from metagpt.logs import logger
import pytest
from metagpt.logs import logger
from metagpt.provider.openai_api import OpenAIGPTAPI as GPTAPI

View file

@ -7,8 +7,9 @@
"""
import pytest
from metagpt.logs import logger
from metagpt.actions import Action, WritePRD, WriteTest
from metagpt.logs import logger
def test_action_repr():

View file

@ -5,9 +5,10 @@
@Author : chengmaoyu
@File : test_action_output
"""
from metagpt.actions import ActionOutput
from typing import List, Tuple
from metagpt.actions import ActionOutput
t_dict = {"Required Python third-party packages": "\"\"\"\nflask==1.1.2\npygame==2.0.1\n\"\"\"\n",
"Required Other language third-party packages": "\"\"\"\nNo third-party packages required for other languages.\n\"\"\"\n",
"Full API spec": "\"\"\"\nopenapi: 3.0.0\ninfo:\n title: Web Snake Game API\n version: 1.0.0\npaths:\n /game:\n get:\n summary: Get the current game state\n responses:\n '200':\n description: A JSON object of the game state\n post:\n summary: Send a command to the game\n requestBody:\n required: true\n content:\n application/json:\n schema:\n type: object\n properties:\n command:\n type: string\n responses:\n '200':\n description: A JSON object of the updated game state\n\"\"\"\n",

View file

@ -6,6 +6,7 @@
@File : test_debug_error.py
"""
import pytest
from metagpt.actions.debug_error import DebugError

View file

@ -7,10 +7,9 @@
"""
import pytest
from metagpt.logs import logger
from metagpt.actions.design_api import WriteDesign
from metagpt.llm import LLM
from metagpt.logs import logger
from metagpt.roles.architect import Architect
from tests.metagpt.actions.mock import PRD_SAMPLE

View file

@ -6,7 +6,7 @@
@File : test_project_management.py
"""
from metagpt.actions.project_management import WriteTasks, AssignTasks
from metagpt.actions.project_management import AssignTasks, WriteTasks
class TestCreateProjectPlan:

View file

@ -6,6 +6,7 @@
@File : test_run_code.py
"""
import pytest
from metagpt.actions.run_code import RunCode

View file

@ -6,10 +6,11 @@
@File : test_write_code.py
"""
import pytest
from metagpt.logs import logger
from metagpt.actions.write_code import WriteCode
from tests.metagpt.actions.mock import WRITE_CODE_PROMPT_SAMPLE, TASKS_2
from metagpt.llm import LLM
from metagpt.logs import logger
from tests.metagpt.actions.mock import TASKS_2, WRITE_CODE_PROMPT_SAMPLE
@pytest.mark.asyncio

View file

@ -6,9 +6,10 @@
@File : test_write_code_review.py
"""
import pytest
from metagpt.logs import logger
from metagpt.llm import LLM
from metagpt.actions.write_code_review import WriteCodeReview
from metagpt.llm import LLM
from metagpt.logs import logger
from tests.metagpt.actions.mock import SEARCH_CODE_SAMPLE

View file

@ -6,8 +6,9 @@
@File : test_write_prd.py
"""
import pytest
from metagpt.actions import BossRequirement, WritePRD
from metagpt.logs import logger
from metagpt.actions import WritePRD, BossRequirement
from metagpt.roles.product_manager import ProductManager
from metagpt.schema import Message

View file

@ -6,6 +6,7 @@
@File : test_write_prd_review.py
"""
import pytest
from metagpt.actions.write_prd_review import WritePRDReview

View file

@ -6,8 +6,9 @@
@File : test_write_test.py
"""
import pytest
from metagpt.logs import logger
from metagpt.actions.write_test import WriteTest
from metagpt.logs import logger
@pytest.mark.asyncio

View file

@ -7,10 +7,10 @@
"""
import pytest
from loguru import logger
from metagpt.const import DATA_PATH
from metagpt.document_store.document import Document
CASES = [
("st/faq.xlsx", "Question", "Answer", 1),
("cases/faq.csv", "Question", "Answer", 1),

View file

@ -8,11 +8,11 @@
import functools
import pytest
from metagpt.logs import logger
from metagpt.const import DATA_PATH
from metagpt.document_store import FaissStore
from metagpt.roles import Sales, CustomerService
from metagpt.logs import logger
from metagpt.roles import CustomerService, Sales
DESC = """## 原则(所有事情都不可绕过原则)
1. 你是一位平台的人工客服话语精炼一次只说一句话会参考规则与FAQ进行回复在与顾客交谈中绝不允许暴露规则与相关字样

View file

@ -6,10 +6,11 @@
@File : test_milvus_store.py
"""
import random
import numpy as np
from metagpt.logs import logger
from metagpt.document_store.milvus_store import MilvusStore, MilvusConnection
import numpy as np
from metagpt.document_store.milvus_store import MilvusConnection, MilvusStore
from metagpt.logs import logger
book_columns = {'idx': int, 'name': str, 'desc': str, 'emb': np.ndarray, 'price': float}
book_data = [

View file

@ -5,7 +5,7 @@
@Author : alexanderwu
@File : mock.py
"""
from metagpt.actions import WritePRD, BossRequirement, WriteDesign, WriteTasks
from metagpt.actions import BossRequirement, WriteDesign, WritePRD, WriteTasks
from metagpt.schema import Message
BOSS_REQUIREMENT = """开发一个基于大语言模型与私有知识库的搜索引擎,希望可以基于大语言模型进行搜索总结"""

View file

@ -11,7 +11,12 @@ from metagpt.actions import BossRequirement
from metagpt.logs import logger
from metagpt.roles import Architect
from metagpt.schema import Message
from tests.metagpt.roles.mock import PRD, DETAIL_REQUIREMENT, BOSS_REQUIREMENT, MockMessages
from tests.metagpt.roles.mock import (
BOSS_REQUIREMENT,
DETAIL_REQUIREMENT,
PRD,
MockMessages,
)
@pytest.mark.asyncio

View file

@ -5,15 +5,23 @@
@Author : alexanderwu
@File : test_engineer.py
"""
import re
import ast
import re
import pytest
from metagpt.logs import logger
from metagpt.utils.common import CodeParser
from metagpt.roles.engineer import Engineer
from metagpt.schema import Message
from tests.metagpt.roles.mock import SYSTEM_DESIGN, TASKS, PRD, MockMessages, STRS_FOR_PARSING, \
TASKS_TOMATO_CLOCK
from metagpt.utils.common import CodeParser
from tests.metagpt.roles.mock import (
PRD,
STRS_FOR_PARSING,
SYSTEM_DESIGN,
TASKS,
TASKS_TOMATO_CLOCK,
MockMessages,
)
@pytest.mark.asyncio

View file

@ -6,12 +6,12 @@
@File : test_product_manager.py
"""
import pytest
from metagpt.logs import logger
from metagpt.actions import BossRequirement
from metagpt.logs import logger
from metagpt.roles import ProductManager
from metagpt.schema import Message
from tests.metagpt.roles.mock import DETAIL_REQUIREMENT, BOSS_REQUIREMENT, MockMessages
from tests.metagpt.roles.mock import BOSS_REQUIREMENT, DETAIL_REQUIREMENT, MockMessages
@pytest.mark.asyncio

View file

@ -6,6 +6,7 @@
@File : test_project_manager.py
"""
import pytest
from metagpt.logs import logger
from metagpt.roles import ProjectManager
from metagpt.schema import Message

View file

@ -8,12 +8,12 @@
import pytest
from metagpt.actions import BossRequirement
from metagpt.environment import Environment
from metagpt.logs import logger
from metagpt.manager import Manager
from metagpt.environment import Environment
from metagpt.roles import ProductManager, Architect, Role
from metagpt.roles import Architect, ProductManager, Role
from metagpt.schema import Message
from metagpt.actions import BossRequirement
@pytest.fixture

View file

@ -7,6 +7,7 @@
"""
import pytest
from metagpt.logs import logger

View file

@ -7,6 +7,7 @@
"""
import pytest
from metagpt.llm import LLM

View file

@ -7,7 +7,7 @@
"""
import pytest
from metagpt.schema import Message, UserMessage, SystemMessage, AIMessage, RawMessage
from metagpt.schema import AIMessage, Message, RawMessage, SystemMessage, UserMessage
def test_message():

View file

@ -5,7 +5,7 @@
@Author : alexanderwu
@File : test_schema.py
"""
from metagpt.schema import UserMessage, SystemMessage, AIMessage, Message
from metagpt.schema import AIMessage, Message, SystemMessage, UserMessage
def test_messages():

View file

@ -6,6 +6,7 @@
@File : test_software_company.py
"""
import pytest
from metagpt.logs import logger
from metagpt.software_company import SoftwareCompany

View file

@ -7,8 +7,14 @@
"""
import pytest
from metagpt.tools.prompt_writer import GPTPromptGenerator, EnronTemplate, BEAGECTemplate, WikiHowTemplate
from metagpt.logs import logger
from metagpt.tools.prompt_writer import (
BEAGECTemplate,
EnronTemplate,
GPTPromptGenerator,
WikiHowTemplate,
)
@pytest.mark.usefixtures("llm_api")

View file

@ -7,6 +7,7 @@
"""
import pytest
from metagpt.logs import logger
from metagpt.tools.search_engine import SearchEngine

View file

@ -5,11 +5,13 @@
@Author : alexanderwu
@File : test_search_engine_meilisearch.py
"""
import time
import pytest
import subprocess
import time
import pytest
from metagpt.logs import logger
from metagpt.tools.search_engine_meilisearch import MeilisearchEngine, DataSource
from metagpt.tools.search_engine_meilisearch import DataSource, MeilisearchEngine
MASTER_KEY = '116Qavl2qpCYNEJNv5-e0RC9kncev1nr1gt7ybEGVLk'

View file

@ -7,10 +7,10 @@
"""
import pytest
from metagpt.logs import logger
from metagpt.tools.search_engine import SearchEngine
CASES = [
"""# 上下文
[{'title': '抗痘 / 控油 / 毛孔調理 臉部保養 商品 | 屈臣氏 Watsons', 'href': 'https://www.watsons.com.tw/%E8%87%89%E9%83%A8%E4%BF%9D%E9%A4%8A/%E6%8A%97%E7%97%98-%E6%8E%A7%E6%B2%B9-%E6%AF%9B%E5%AD%94%E8%AA%BF%E7%90%86/c/10410601', 'body': '抗痘 / 控油 / 毛孔調理等臉部保養用品盡在屈臣氏,多樣抗痘 / 控油 / 毛孔調理商品全面符合您的需求。3M, 3M Nexcare, ARIN, Biore 蜜妮, CEZANNE等眾多推薦品牌快來屈臣氏選購。'}, {'title': '有哪些祛痘印产品曾惊艳过你? - 知乎', 'href': 'https://www.zhihu.com/question/380098171', 'body': '有哪些祛痘印产品曾惊艳过你? ... 素姬水杨酸精华 祛痘产品里绝对不能少了水杨酸这个成分!用这个品牌主要是信赖它的温和性,而且价格便宜,去粉刺痘痘效果又好,对闭口和黑头都有效果。 ... 购买比较方便我在屈臣氏买的50RMB. 西班牙IFC duo祛痘凝露 ...'}, {'title': '屈臣氏祛痘系列_百度知道', 'href': 'https://zhidao.baidu.com/question/581355167.html', 'body': '2014-08-28 屈臣氏里有哪些祛痘效果好的产品? 26 2007-08-25 屈臣氏有卖哪些祛痘产品 61 2019-05-27 屈臣氏有哪些祛痘产品 什么方法会比较好?? 2015-09-27 屈臣氏白金祛痘系列的使用顺序 30 2014-11-03 屈臣氏卖的祛痘产品叫什么 1 2011-05-24 屈臣氏的祛痘好用的产品有那些 ...'}, {'title': '屈臣氏里有哪些祛痘效果好的产品? - 百度知道', 'href': 'https://zhidao.baidu.com/question/360679400530686652.html', 'body': '阿达帕林是一款医药系列的祛痘产品,它里面蕴含了非常丰富的甲酸类化合物,涂抹在皮肤上会有很好的消炎效果,对于粉刺、闭口、痘痘等痤疮系列的皮肤问题也有很好的修复,可以让毛囊上的皮肤细胞正常分化。. 用户实测评分9.663分. 实验室效果评测9. ...'}, {'title': '33款屈臣氏最值得买的好物! - 知乎 - 知乎专栏', 'href': 'https://zhuanlan.zhihu.com/p/31366278', 'body': '屈臣氏深层卸妆棉. 19.9元/25*2. 一般出差不想带很多瓶瓶罐罐就会带卸妆棉,当时是买一送一,就觉得超划算。. 棉质很好,很舒服,厚度适中,温和不刺激,淡淡的香味,卸得很舒心,卸得也很干净。. 眼妆也可以用这个卸,因为它不含酒精,所以一点也不辣 ...'}, {'title': '屈臣氏官网 - Watsons', 'href': 'https://www.watsons.com.cn/', 'body': '屈臣氏百年正品口碑现金优惠多多多2小时闪电送到家还能屈臣氏门店自提。美妆洗护口腔保健日用百货男士护理更便捷的操作满足你更多。屈臣氏始创于1841年线下门店覆盖全球12个国家地区超过5500家门店。在中国400多个城市已超过3000家门店6000万名会员与你一起放心买好货!'}, {'title': '15款日本最具口碑的祛痘神器! - 知乎 - 知乎专栏', 'href': 'https://zhuanlan.zhihu.com/p/63349036', 'body': '乐敦. Acnes药用祛痘抗痘粉尘暗疮药膏. 药用抗痘药膏清爽啫哩質地维生素E衍生物维生素B6组合膏体不腻轻透很好吸收淡淡清香味主要针对红肿且疼痛的大颗痘痘排出脓液、杀灭细菌、消除红肿第二天就会有效果。. DHC. 祛痘净痘调理精华. 含有o-Cymen ...'}, {'title': '请问屈臣氏什么产品可以去痘疤的 - Sina', 'href': 'https://iask.sina.com.cn/b/1STygN4RT2wZ.html', 'body': '请问屈臣氏什么产品可以去痘疤的本人很少长痘痘,偶尔冒几颗。脸颊上的痘痘来的快去的快,不怎么留疤,就是额头和下巴嘴角边的痘痘感觉超级敏感,一挤就留疤,苦恼! ... 想问下屈臣氏有什么产品能去痘疤的,要有效哦~谢谢各位了! ...'}, {'title': '屈臣氏祛痘凝胶新款 - 屈臣氏祛痘凝胶2021年新款 - 京东', 'href': 'https://www.jd.com/xinkuan/16729c68245569aae4c3.html', 'body': '屈臣氏芦荟凝胶清凉滋润舒缓祛痘印痘坑痘疤补水保湿晒后修复凝胶 【保湿芦荟凝胶】3瓶900g. 2+ 条评论. 屈臣氏 Leaf Simple简单叶子水杨酸祛痘凝胶去痘印粉刺闭口淡化痘坑研春堂收缩毛孔改善粉刺 两支. 4+ 条评论. 屈臣氏 Leaf Simple简单叶子水杨酸祛痘凝胶去痘印 ...'}]

View file

@ -7,6 +7,7 @@
"""
import pytest
from metagpt.logs import logger
from metagpt.tools.translator import Translator

View file

@ -6,9 +6,8 @@
@File : test_ut_generator.py
"""
from metagpt.tools.ut_writer import UTGenerator
from metagpt.const import SWAGGER_PATH, UT_PY_PATH, API_QUESTIONS_PATH
from metagpt.tools.ut_writer import YFT_PROMPT_PREFIX
from metagpt.const import API_QUESTIONS_PATH, SWAGGER_PATH, UT_PY_PATH
from metagpt.tools.ut_writer import YFT_PROMPT_PREFIX, UTGenerator
class TestUTWriter:

View file

@ -7,6 +7,7 @@
"""
import pytest
from metagpt.utils.common import CodeParser
t_text = '''

View file

@ -6,8 +6,10 @@
@File : test_common.py
"""
import pytest
import os
import pytest
from metagpt.const import get_project_root

View file

@ -9,6 +9,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pytest
from metagpt.logs import logger
from metagpt.provider.openai_api import OpenAIGPTAPI
from metagpt.utils.custom_aio_session import CustomAioSession

View file

@ -6,10 +6,12 @@
@File : test_output_parser.py
"""
import pytest
from typing import List, Tuple
import re
import ast
import re
from typing import List, Tuple
import pytest
from metagpt.utils.common import OutputParser

View file

@ -7,6 +7,7 @@
"""
import pytest
from metagpt.const import PROJECT_ROOT
from metagpt.utils.read_document import read_docx