* refactor(client): remove Python embedded mode Consolidate Python consumers on the HTTP SDK while keeping shared server and storage capabilities unchanged. * refactor(client): remove obsolete embedded leftovers
langchain-openviking
langchain-openviking is the official OpenViking integration package for
LangChain and LangGraph applications. It keeps framework-specific adapters
separate from the OpenViking server and communicates with remote OpenViking
instances through the lightweight openviking-sdk package.
Installation
For LangChain retrievers, tools, message history, and context wrappers:
pip install langchain-openviking
For the LangGraph store and middleware:
pip install "langchain-openviking[langgraph]"
Quick start
from langchain_openviking import OpenVikingRetriever
from openviking_sdk import SyncHTTPClient
client = SyncHTTPClient(
url="http://127.0.0.1:1933",
api_key="your-user-api-key",
)
client.initialize()
retriever = OpenVikingRetriever(
client=client,
target_uri="viking://user/memories",
)
try:
documents = retriever.invoke("What deployment preferences should I remember?")
finally:
client.close()
The package also provides OpenVikingSessionRecorder,
OpenVikingContextMiddleware, OpenVikingStore,
OpenVikingChatMessageHistory, and create_openviking_tools.
Client ownership
- A client supplied through
client=orasync_client=remains caller-owned. - Clients created from
url=are managed by the adapter and can be closed withclose()oraclose()as documented by each adapter.
The previous openviking.integrations.langchain import path remains available
from the full openviking distribution as a compatibility shim.
See the OpenViking documentation and the repository's
examples/langchain-langgraph directory for complete examples.