langchain go postgresql vectorstore
1.0.0
langchaingo 拡張機能を使用すると、Go アプリケーションのベクトル データベースとして pgvector を使用できます。 pgvector-go ライブラリと pgx ドライバーを使用します。
これを LangChain アプリケーションでスタンドアロンのベクトル データベースとして、またはチェーンの一部として使用できます。たとえば、RAG 実装では次のようになります。
import (
"github.com/abhirockzz/langchain-go-postgresql-vectorstore/pgvector"
//...
)
func ragToRiches (){
bedrockClaudeLLM , err := claude . New ( "us-east-1" )
tableName := "test_table"
textColumnName := "text_data"
embeddingStoreColumnName := "embedding_data"
amazonTitanEmbedder , err := titan_embedding . New ( "us-east-1" )
pgVectorStore , err := pgvector . New ( pgConnString ,
tableName ,
embeddingStoreColumnName ,
textColumnName ,
false ,
amazonTitanEmbedder )
result , err := chains . Run (
context . Background (),
chains . NewRetrievalQAFromLLM (
bedrockClaudeLLM ,
vectorstores . ToRetriever ( pgVectorStore , numOfResults ),
),
question ,
chains . WithMaxTokens ( 8091 ),
)
}