| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import { ChatOpenAI } from 'langchain/chat_models/openai'
- import { HumanMessage, ChatMessage, SystemMessage } from 'langchain/schema'
- import { PromptTemplate } from 'langchain/prompts'
- import { LLMChain } from 'langchain/chains'
- import { PDFLoader } from 'langchain/document_loaders/fs/pdf'
- import { UnstructuredLoader } from 'langchain/document_loaders/fs/unstructured'
- import { config } from 'dotenv'
- import { BufferMemory } from 'langchain/memory'
- import { RedisChatMessageHistory } from 'langchain/stores/message/ioredis'
- import { ConversationChain } from 'langchain/chains'
- import { OpenAIEmbeddings } from 'langchain/embeddings/openai'
- import { TypeORMVectorStore } from 'langchain/vectorstores/typeorm'
- config()
- const loader1 = new UnstructuredLoader('/Users/drew/Downloads/客服的副本.pdf', {
- apiUrl: 'http://192.168.6.19:8000/general/v0/general'
- })
- const docs1 = await loader1.load()
- console.log(docs1)
- const embeddings = new OpenAIEmbeddings({
- azureOpenAIApiKey: 'beb32e4625a94b65ba8bc0ba1688c4d2',
- azureOpenAIApiInstanceName: 'zouma',
- azureOpenAIApiDeploymentName: 'embedding',
- azureOpenAIApiVersion: '2023-03-15-preview',
- verbose: true
- })
- const typeormVectorStore = await TypeORMVectorStore.fromDataSource(embeddings, {
- postgresConnectionOptions: {
- type: 'postgres',
- host: process.env.PG_HOST,
- port: process.env.PG_PORT,
- username: process.env.PG_USERNAME,
- password: process.env.PG_PASSWORD,
- database: process.env.PG_DATABASE
- },
- verbose: true
- })
- await typeormVectorStore.ensureTableInDatabase()
- await typeormVectorStore.addDocuments(docs1)
- const results = await typeormVectorStore.similaritySearch('包邮', 2)
- console.log(results)
|