From d56cec500259f4f1c7d620d058ba72a95ec629dc Mon Sep 17 00:00:00 2001 From: Wenjie Zhang Date: Thu, 23 Oct 2025 01:39:01 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E9=80=82=E9=85=8D=E4=BA=86=20langc?= =?UTF-8?q?hain=20v1=20=E7=89=88=E6=9C=AC=EF=BC=8C=E4=BD=86=E5=B9=B6?= =?UTF-8?q?=E5=BC=95=E5=85=A5=E6=96=B0=E7=89=B9=E6=80=A7=EF=BC=8C=E4=BB=85?= =?UTF-8?q?=E6=97=A0=E5=85=BC=E5=AE=B9=E6=80=A7=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pyproject.toml | 5 ++--- server/routers/chat_router.py | 2 +- src/agents/chatbot/graph.py | 2 +- src/agents/chatbot/state.py | 2 +- src/agents/chatbot/tools.py | 2 +- src/agents/common/models.py | 18 +++++++++--------- src/agents/common/toolkits/mysql/tools.py | 2 +- src/agents/common/tools.py | 3 ++- src/agents/common/utils.py | 2 +- src/agents/react/graph.py | 2 +- src/knowledge/indexing.py | 2 +- 11 files changed, 21 insertions(+), 21 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 2233e678..efed6bc1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,8 +5,8 @@ description = "Add your description here" readme = "README.md" requires-python = ">=3.11" dependencies = [ - "arxiv>=2.2.0", "asyncpg>=0.30.0", + "langchain==1.0", "chromadb>=1.0.15", "colorlog>=6.9.0", "dashscope>=1.23.2", @@ -19,8 +19,7 @@ dependencies = [ "langchain-openai>=0.3.14", "langchain-tavily>=0.2.3", "langchain-text-splitters>=0.3.9", - "langchain-together>=0.3.0", - "langgraph>=0.3.34", + "langgraph==1.0.1", "langgraph-checkpoint-sqlite>=2.0.7", "langgraph-cli[inmem]>=0.1.54", "langsmith>=0.3.37", diff --git a/server/routers/chat_router.py b/server/routers/chat_router.py index 4cad7dbc..66c43a82 100644 --- a/server/routers/chat_router.py +++ b/server/routers/chat_router.py @@ -7,7 +7,7 @@ from pathlib import Path from fastapi import APIRouter, Body, Depends, HTTPException from fastapi.responses import StreamingResponse -from langchain_core.messages import AIMessageChunk, HumanMessage +from langchain.messages import AIMessageChunk, HumanMessage from pydantic import BaseModel from sqlalchemy.orm import Session diff --git a/src/agents/chatbot/graph.py b/src/agents/chatbot/graph.py index c60a714a..12b263aa 100644 --- a/src/agents/chatbot/graph.py +++ b/src/agents/chatbot/graph.py @@ -1,6 +1,6 @@ from typing import Any, cast -from langchain_core.messages import AIMessage, ToolMessage +from langchain.messages import AIMessage, ToolMessage from langgraph.graph import END, START, StateGraph from langgraph.prebuilt import ToolNode, tools_condition from langgraph.runtime import Runtime diff --git a/src/agents/chatbot/state.py b/src/agents/chatbot/state.py index 28338901..f46bfb9c 100644 --- a/src/agents/chatbot/state.py +++ b/src/agents/chatbot/state.py @@ -6,7 +6,7 @@ from collections.abc import Sequence from dataclasses import dataclass, field from typing import Annotated -from langchain_core.messages import AnyMessage +from langchain.messages import AnyMessage from langgraph.graph import add_messages diff --git a/src/agents/chatbot/tools.py b/src/agents/chatbot/tools.py index ee83c8b0..22eb8da9 100644 --- a/src/agents/chatbot/tools.py +++ b/src/agents/chatbot/tools.py @@ -2,7 +2,7 @@ import os from typing import Any import requests -from langchain_core.tools import tool +from langchain.tools import tool from src.agents.common.toolkits.mysql import get_mysql_tools from src.agents.common.tools import get_buildin_tools diff --git a/src/agents/common/models.py b/src/agents/common/models.py index 4c528819..2a6bebc4 100644 --- a/src/agents/common/models.py +++ b/src/agents/common/models.py @@ -1,7 +1,7 @@ import os import traceback -from langchain_core.language_models import BaseChatModel +from langchain.chat_models import BaseChatModel from pydantic import SecretStr from src import config @@ -37,15 +37,15 @@ def load_chat_model(fully_specified_name: str, **kwargs) -> BaseChatModel: stream_usage=True, ) - elif provider == "together": - from langchain_together import ChatTogether + # elif provider == "together": + # from langchain_together import ChatTogether - return ChatTogether( - model=model, - api_key=SecretStr(api_key), - base_url=base_url, - stream_usage=True, - ) + # return ChatTogether( + # model=model, + # api_key=SecretStr(api_key), + # base_url=base_url, + # stream_usage=True, + # ) else: try: # 其他模型,默认使用OpenAIBase, like openai, zhipuai diff --git a/src/agents/common/toolkits/mysql/tools.py b/src/agents/common/toolkits/mysql/tools.py index f5b0a4ce..8e86c27e 100644 --- a/src/agents/common/toolkits/mysql/tools.py +++ b/src/agents/common/toolkits/mysql/tools.py @@ -1,6 +1,6 @@ from typing import Annotated, Any -from langchain_core.tools import tool +from langchain.tools import tool from pydantic import BaseModel, Field from src.utils import logger diff --git a/src/agents/common/tools.py b/src/agents/common/tools.py index 766ada84..6fb26cd9 100644 --- a/src/agents/common/tools.py +++ b/src/agents/common/tools.py @@ -2,7 +2,8 @@ import asyncio import traceback from typing import Annotated, Any -from langchain_core.tools import StructuredTool, tool +from langchain.tools import tool +from langchain_core.tools import StructuredTool from langchain_tavily import TavilySearch from pydantic import BaseModel, Field diff --git a/src/agents/common/utils.py b/src/agents/common/utils.py index 50dfdccd..151a9b96 100644 --- a/src/agents/common/utils.py +++ b/src/agents/common/utils.py @@ -1,6 +1,6 @@ from datetime import UTC, datetime -from langchain_core.messages import AIMessageChunk, ToolMessage +from langchain.messages import AIMessageChunk, ToolMessage from langchain_core.runnables import RunnableConfig from src.agents.common.base import BaseAgent diff --git a/src/agents/react/graph.py b/src/agents/react/graph.py index d76a8904..d70a6180 100644 --- a/src/agents/react/graph.py +++ b/src/agents/react/graph.py @@ -1,6 +1,6 @@ from pathlib import Path -from langchain_core.messages import AnyMessage, SystemMessage +from langchain.messages import AnyMessage, SystemMessage from langgraph.prebuilt import create_react_agent from langgraph.runtime import get_runtime diff --git a/src/knowledge/indexing.py b/src/knowledge/indexing.py index 600a59fe..750dd0d0 100644 --- a/src/knowledge/indexing.py +++ b/src/knowledge/indexing.py @@ -2,7 +2,7 @@ import asyncio import os from pathlib import Path -from langchain.text_splitter import RecursiveCharacterTextSplitter +from langchain_text_splitters import RecursiveCharacterTextSplitter from langchain_community.document_loaders import ( CSVLoader, JSONLoader,