Movatterモバイル変換


[0]ホーム

URL:


Skip to main content
OurBuilding Ambient Agents with LangGraph course is now available on LangChain Academy!
Open on GitHub

Couchbase

Couchbase is an award-winning distributed NoSQL cloud databasethat delivers unmatched versatility, performance, scalability, and financial valuefor all of your cloud, mobile, AI, and edge computing applications.

Installation and Setup

We have to install thelangchain-couchbase package.

pip install langchain-couchbase

Vector Store

See ausage example.

from langchain_couchbaseimport CouchbaseSearchVectorStore

import getpass

# Constants for the connection
COUCHBASE_CONNECTION_STRING= getpass.getpass(
"Enter the connection string for the Couchbase cluster: "
)
DB_USERNAME= getpass.getpass("Enter the username for the Couchbase cluster: ")
DB_PASSWORD= getpass.getpass("Enter the password for the Couchbase cluster: ")

# Create Couchbase connection object
from datetimeimport timedelta

from couchbase.authimport PasswordAuthenticator
from couchbase.clusterimport Cluster
from couchbase.optionsimport ClusterOptions

auth= PasswordAuthenticator(DB_USERNAME, DB_PASSWORD)
options= ClusterOptions(auth)
cluster= Cluster(COUCHBASE_CONNECTION_STRING, options)

# Wait until the cluster is ready for use.
cluster.wait_until_ready(timedelta(seconds=5))

vector_store= CouchbaseSearchVectorStore(
cluster=cluster,
bucket_name=BUCKET_NAME,
scope_name=SCOPE_NAME,
collection_name=COLLECTION_NAME,
embedding=my_embeddings,
index_name=SEARCH_INDEX_NAME,
)

# Add documents
texts=["Couchbase is a NoSQL database","LangChain is a framework for LLM applications"]
vectorstore.add_texts(texts)

# Search
query="What is Couchbase?"
docs= vectorstore.similarity_search(query)

API Reference:CouchbaseSearchVectorStore

Document loader

See ausage example.

from langchain_community.document_loaders.couchbaseimport CouchbaseLoader

connection_string="couchbase://localhost"# valid Couchbase connection string
db_username=(
"Administrator"# valid database user with read access to the bucket being queried
)
db_password="Password"# password for the database user

# query is a valid SQL++ query
query="""
SELECT h.* FROM `travel-sample`.inventory.hotel h
WHERE h.country = 'United States'
LIMIT 1
"""

loader= CouchbaseLoader(
connection_string,
db_username,
db_password,
query,
)

docs= loader.load()

API Reference:CouchbaseLoader

LLM Caches

CouchbaseCache

Use Couchbase as a cache for prompts and responses.

See ausage example.

To import this cache:

from langchain_couchbase.cacheimport CouchbaseCache

To use this cache with your LLMs:

from langchain_core.globalsimport set_llm_cache

cluster= couchbase_cluster_connection_object

set_llm_cache(
CouchbaseCache(
cluster=cluster,
bucket_name=BUCKET_NAME,
scope_name=SCOPE_NAME,
collection_name=COLLECTION_NAME,
)
)
API Reference:set_llm_cache

API Reference:CouchbaseCache

CouchbaseSemanticCache

Semantic caching allows users to retrieve cached prompts based on the semantic similarity between the user input and previously cached inputs. Under the hood it uses Couchbase as both a cache and a vectorstore.The CouchbaseSemanticCache needs a Search Index defined to work. Please look at theusage example on how to set up the index.

See ausage example.

To import this cache:

from langchain_couchbase.cacheimport CouchbaseSemanticCache

To use this cache with your LLMs:

from langchain_core.globalsimport set_llm_cache

# use any embedding provider...
from langchain_openai.Embeddingsimport OpenAIEmbeddings

embeddings= OpenAIEmbeddings()
cluster= couchbase_cluster_connection_object

set_llm_cache(
CouchbaseSemanticCache(
cluster=cluster,
embedding= embeddings,
bucket_name=BUCKET_NAME,
scope_name=SCOPE_NAME,
collection_name=COLLECTION_NAME,
index_name=INDEX_NAME,
)
)
API Reference:set_llm_cache

API Reference:CouchbaseSemanticCache

Chat Message History

Use Couchbase as the storage for your chat messages.

See ausage example.

To use the chat message history in your applications:

from langchain_couchbase.chat_message_historiesimport CouchbaseChatMessageHistory

message_history= CouchbaseChatMessageHistory(
cluster=cluster,
bucket_name=BUCKET_NAME,
scope_name=SCOPE_NAME,
collection_name=COLLECTION_NAME,
session_id="test-session",
)

message_history.add_user_message("hi!")

API Reference:CouchbaseChatMessageHistory


[8]ページ先頭

©2009-2025 Movatter.jp