[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-09-04。"],[],[],null,["# Build LLM-powered applications using LangChain\n==============================================\n\n|\n| **Preview\n| --- LangChain**\n|\n|\n| This feature is subject to the \"Pre-GA Offerings Terms\" in the General Service Terms section\n| of the [Service Specific Terms](/terms/service-terms#1).\n|\n| Pre-GA features are available \"as is\" and might have limited support.\n|\n| For more information, see the\n| [launch stage descriptions](/products#product-launch-stages).\n\nThis page introduces how to build LLM-powered applications using\n[LangChain](https://www.langchain.com/). The overviews on this\npage link to procedure guides in GitHub.\n\nWhat is LangChain?\n------------------\n\nLangChain is an LLM orchestration framework that helps developers build\ngenerative AI applications or retrieval-augmented generation (RAG) workflows. It\nprovides the structure, tools, and components to streamline complex LLM\nworkflows.\n\nFor more information about LangChain, see the [Google\nLangChain](https://python.langchain.com/docs/integrations/platforms/google)\npage. For more information about the LangChain framework, see the [LangChain](https://python.langchain.com/docs/get_started/introduction)\nproduct documentation.\n\nLangChain components for Firestore\n----------------------------------\n\nFirestore offers the following LangChain interfaces:\n\n- [Vector store](#vector-store)\n- [Document loader](#document-loader)\n- [Chat message history](#chat-message-history)\n\nVector store for Firestore\n--------------------------\n\nVector store retrieves and stores documents and metadata from a vector database.\nVector store gives an application the ability to perform semantic searches that\ninterpret the meaning of a user query. This type of search is a called a\nvector search, and it can find topics that match the query conceptually. At\nquery time, vector store retrieves the embedding vectors that are\nmost similar to the embedding of the search request. In LangChain, a Vector store takes care\nof storing embedded data and performing the vector search for you.\n\nTo work with vector store in Firestore, use the\n`FirestoreVectorStore` class.\n\nFor more information, see the [LangChain Vector\nStores](https://python.langchain.com/docs/modules/data_connection/vectorstores/)\nproduct documentation.\n\n### Vector store procedure guide\n\nThe [Firestore guide for vector\nstore](https://github.com/googleapis/langchain-google-firestore-python/blob/main/docs/vectorstores.ipynb)\nshows you how to do the following:\n\n- Install the integration package and LangChain\n- Initialize a table for the vector store\n- Set up an embedding service using `VertexAIEmbeddings`\n- Initialize `FirestoreVectorStore`\n- Update and delete documents\n- Search for similar documents\n- Create a custom vector store to connect to a pre-existing Firestore database that has a table with vector embeddings\n\nDocument loader for Firestore\n-----------------------------\n\nThe document loader saves, loads, and deletes a LangChain `Document` objects.\nFor example, you can load data for processing into embeddings and either store\nit in vector store or use it as a tool to provide specific context to chains.\n\nTo load documents from Firestore, use the `FirestoreLoader`\nclass. `FirestoreLoader` methods return one or more documents from a table. Use\nthe `FirestoreSaver` class to save and delete documents.\n\nFor more information, see the [LangChain Document\nloaders](https://python.langchain.com/docs/modules/data_connection/document_loaders/) topic.\n\n### Document loader procedure guide\n\nThe [Firestore guide for document\nloader](https://github.com/googleapis/langchain-google-firestore-python/blob/main/docs/document_loader.ipynb) shows you how to:\n\n- Install the integration package and LangChain\n- Load documents from a table\n- Add a filter to the loader\n- Customize the connection and authentication\n- Customize Document construction by specifying customer content and metadata\n- How to use and customize a `FirestoreSaver` to store and delete documents\n\nChat message history for Firestore\n----------------------------------\n\nQuestion and answer applications require a history of the things said in the\nconversation to give the application context for answering further questions\nfrom the user. The LangChain `ChatMessageHistory` class lets the application\nsave messages to a database and retrieve them when needed to formulate further\nanswers. A message can be a question, an answer, a statement, a greeting or any\nother piece of text that the user or application gives during the conversation.\n`ChatMessageHistory` stores each message and chains messages together for each\nconversation.\n\nFirestore extends this class with `FirestoreChatMessageHistory`.\n\n### Chat message history procedure guide\n\nThe [Firestore guide for chat message\nhistory](https://github.com/googleapis/langchain-google-firestore-python/blob/main/docs/chat_message_history.ipynb) shows you how to:\n\n- Install LangChain and authenticate to Google Cloud\n- Initialize the `FirestoreChatMessageHistory` class to add and delete messages\n- Use a client to customize the connection and authentication"]]