在 Reasoning Engine 上构建、测试和部署 Langchain 聊天机器人
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
此示例演示了如何在 Reasoning Engine 上构建、测试和部署 Langchain Chatbot。
深入探索
如需查看包含此代码示例的详细文档,请参阅以下内容:
代码示例
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],[],[],[],null,["# Build, test, and deploy a Langchain chatbot on Reasoning Engine\n\nThis sample demonstrates how to build, test, and deploy a Langchain chatbot on Reasoning Engine.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Agent Engine API](/vertex-ai/generative-ai/docs/model-reference/reasoning-engine)\n\nCode sample\n-----------\n\n### Python\n\n\nBefore trying this sample, follow the Python setup instructions in the\n[Vertex AI quickstart using\nclient libraries](/vertex-ai/docs/start/client-libraries).\n\n\nFor more information, see the\n[Vertex AI Python API\nreference documentation](/python/docs/reference/aiplatform/latest).\n\n\nTo authenticate to Vertex AI, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n\n from typing import List\n\n import https://cloud.google.com/python/docs/reference/vertexai/latest/\n from vertexai.preview import https://cloud.google.com/python/docs/reference/vertexai/latest/vertexai.preview.reasoning_engines.html\n\n # TODO(developer): Update and un-comment below lines\n # PROJECT_ID = \"your-project-id\"\n # staging_bucket = \"gs://YOUR_BUCKET_NAME\"\n\n https://cloud.google.com/python/docs/reference/vertexai/latest/.init(\n project=PROJECT_ID, location=\"us-central1\", staging_bucket=staging_bucket\n )\n\n class LangchainApp:\n def __init__(self, project: str, location: str) -\u003e None:\n self.project_id = project\n self.location = location\n\n def set_up(self) -\u003e None:\n from langchain_core.prompts import ChatPromptTemplate\n from langchain_google_vertexai import ChatVertexAI\n\n system = (\n \"You are a helpful assistant that answers questions \"\n \"about Google Cloud.\"\n )\n human = \"{text}\"\n prompt = ChatPromptTemplate.from_messages(\n [(\"system\", system), (\"human\", human)]\n )\n chat = ChatVertexAI(project=self.project_id, location=self.location)\n self.chain = prompt | chat\n\n def query(self, question: str) -\u003e Union[str, List[Union[str, Dict]]]:\n \"\"\"Query the application.\n Args:\n question: The user prompt.\n Returns:\n str: The LLM response.\n \"\"\"\n return self.chain.invoke({\"text\": question}).content\n\n # Locally test\n app = LangchainApp(project=PROJECT_ID, location=\"us-central1\")\n app.set_up()\n print(app.query(\"What is Vertex AI?\"))\n\n # Create a remote app with Reasoning Engine\n # Deployment of the app should take a few minutes to complete.\n reasoning_engine = https://cloud.google.com/python/docs/reference/vertexai/latest/vertexai.preview.reasoning_engines.html.https://cloud.google.com/python/docs/reference/vertexai/latest/vertexai.preview.reasoning_engines.ReasoningEngine.html.create(\n LangchainApp(project=PROJECT_ID, location=\"us-central1\"),\n requirements=[\n \"google-cloud-aiplatform[langchain,reasoningengine]\",\n \"cloudpickle==3.0.0\",\n \"pydantic==2.7.4\",\n ],\n display_name=\"Demo LangChain App\",\n description=\"This is a simple LangChain app.\",\n # sys_version=\"3.10\", # Optional\n extra_packages=[],\n )\n # Example response:\n # Model_name will become a required arg for VertexAIEmbeddings starting...\n # ...\n # Create ReasoningEngine backing LRO: projects/123456789/locations/us-central1/reasoningEngines/...\n # ReasoningEngine created. Resource name: projects/123456789/locations/us-central1/reasoningEngines/...\n # ...\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=generativeaionvertexai)."]]