commit some debug log

This commit is contained in:
weiweiw 2025-01-07 09:55:29 +08:00
parent 52bf829a84
commit fd1a46ffd9
2 changed files with 9 additions and 8 deletions

View File

@ -40,7 +40,7 @@ LLM_MODEL_CONFIG:
prompt_name: default
callbacks: false
llm_model:
model: 'qwen2-instruct'
model: ''
temperature: 0.9
max_tokens: 4096
history_len: 10

View File

@ -1,13 +1,12 @@
from __future__ import annotations
import json
import logging
import re
from typing import Any, Callable, Dict, Optional, Tuple, Type, Union
from langchain.agents import tool
from langchain_core.tools import BaseTool
from chatchat.utils import build_logger
from chatchat.server.knowledge_base.kb_doc_api import DocumentWithVSId
from chatchat.server.pydantic_v1 import BaseModel, Extra
@ -24,6 +23,7 @@ BaseTool.Config.extra = Extra.allow
################################### TODO: workaround to langchain #15855
# patch BaseTool to support tool parameters defined using pydantic Field
logger = build_logger()
def _new_parse_input(
self,
@ -32,8 +32,9 @@ def _new_parse_input(
"""Convert tool input to pydantic model."""
try:
input_args = self.args_schema
logger.info(f"input_args:{input_args}, tool_input:{tool_input}")
if isinstance(tool_input, str):
logging.info(f"tool_input:{tool_input}")
logger.info(f"tool_input:{tool_input}")
if input_args is not None:
key_ = next(iter(input_args.__fields__.keys()))
input_args.validate({key_: tool_input})
@ -41,18 +42,18 @@ def _new_parse_input(
else:
if input_args is not None:
result = input_args.parse_obj(tool_input)
logging.info(f"result:{result}")
logger.info(f"result:{result}")
return result.dict()
except Exception as e:
msg = f"Caught exception: {e}"
logging.error(f"{e.__class__.__name__}: {msg}")
logger.error(f"{e.__class__.__name__}: {msg}")
def _new_to_args_and_kwargs(self, tool_input: Union[str, Dict]) -> Tuple[Tuple, Dict]:
# For backwards compatibility, if run_input is a string,
# pass as a positional argument.
if isinstance(tool_input, str):
logging.info(f"tool_input:{tool_input}")
logger.info(f"tool_input:{tool_input}")
return (tool_input,), {}
else:
# for tool defined with `*args` parameters
@ -63,7 +64,7 @@ def _new_to_args_and_kwargs(self, tool_input: Union[str, Dict]) -> Tuple[Tuple,
# .search_api
if "args" in tool_input:
args = tool_input["args"]
logging.info(f"args:{args}")
logger.info(f"args:{args}")
if args is None:
tool_input.pop("args")
return (), tool_input