fixbug: METAGPT model is None

fixbug: add METAGPT model calc usage logic
This commit is contained in:
莘权 马 2024-02-01 15:23:24 +08:00
parent 865148dcf1
commit 525c62b235
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