Reasoning Engine에서 Langchain 챗봇 빌드, 테스트, 배포
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
이 샘플에서는 추론 엔진에서 Langchain 챗봇을 빌드, 테스트, 배포하는 방법을 보여줍니다.
더 살펴보기
이 코드 샘플이 포함된 자세한 문서는 다음을 참조하세요.
코드 샘플
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 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)."]]