Software Environment
Python
As LangChain, introduced in this book, is based on Python, the following is the requirements file containing the necessary libraries and modules for LangChain installation.
In my development environment, I have the following libraries installed:
Reminder: The community is evolving, and the library is adapting rapidly. The information presented here may change over time. This list serves as a reference for the current chapter being written.
beautifulsoup4 4.12.3
faiss-cpu 1.9.0
huggingface-hub 0.26.2
langchain 0.3.7
langchain-chroma 0.1.4
langchain-community 0.3.5
langchain-core 0.3.15
langchain-experimental 0.3.3
langchain-huggingface 0.1.2
langchain-ollama 0.2.0
langchain-openai 0.2.6
langchain-qdrant 0.2.0
langchain-text-splitters 0.3.2
numpy 1.26.4
pypdf 5.1.0
requests 2.32.3
requests-oauthlib 2.0.0
requests-toolbelt 1.0.0
sentence-transformers 3.2.1
torch 2.5.1
transformers 4.46.2Architecture
Let’s observe the architectural overview:
- LangChain oversees the LLM and VectorStore components.
- Ollama, serving as the manager for LLM, operates as a server process within the operating system, such as through
systemdon Linux. - VectorStore, exemplified by Qdrant in this context and overseen by LangChain, runs on Docker with a dedicated volume for persistent data storage.
package langchain {
component llm
component vectorstore
}
package operating-system {
component docker
component ollama
database storage
}
vectorstore -- docker
docker - storage
llm -- ollama