Merge pull request #819 from iorisa/fixbug/metagpt_model

fixbug: METAGPT model is None
This commit is contained in:
garylin2099 2024-02-01 16:20:02 +08:00 committed by GitHub
commit 1008bbb4c3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 22 additions and 2 deletions

View file

@ -5,12 +5,30 @@
@File : metagpt_api.py
@Desc : MetaGPT LLM provider.
"""
from metagpt.config import LLMProviderEnum
from openai.types import CompletionUsage
from metagpt.config import CONFIG, LLMProviderEnum
from metagpt.provider import OpenAILLM
from metagpt.provider.llm_provider_registry import register_provider
from metagpt.utils.exceptions import handle_exception
@register_provider(LLMProviderEnum.METAGPT)
class MetaGPTLLM(OpenAILLM):
def __init__(self):
super().__init__()
self.model = CONFIG.DEPLOYMENT_NAME
def _calc_usage(self, messages: list[dict], rsp: str) -> CompletionUsage:
usage = CompletionUsage(prompt_tokens=0, completion_tokens=0, total_tokens=0)
if not CONFIG.calc_usage:
return usage
# The current billing is based on usage frequency. If there is a future billing logic based on the
# number of tokens, please refine the logic here accordingly.
return usage
@handle_exception
def _update_costs(self, usage: CompletionUsage):
pass

View file

@ -39,6 +39,8 @@ class CostManager(BaseModel):
completion_tokens (int): The number of tokens used in the completion.
model (str): The model used for the API call.
"""
if prompt_tokens + completion_tokens == 0:
return
self.total_prompt_tokens += prompt_tokens
self.total_completion_tokens += completion_tokens
cost = (

View file

@ -57,7 +57,7 @@ extras_require["dev"] = (["pylint~=3.0.3", "black~=23.3.0", "isort~=5.12.0", "pr
setup(
name="metagpt",
version="0.6.8",
version="0.6.9",
description="The Multi-Agent Framework",
long_description=long_description,
long_description_content_type="text/markdown",