langchain 0.0.4 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -0
- package/agents.d.ts +1 -0
- package/agents.js +1 -0
- package/chains.d.ts +1 -0
- package/chains.js +1 -0
- package/dist/agents/agent.d.ts +96 -0
- package/dist/agents/agent.js +151 -0
- package/dist/agents/agent.js.map +1 -0
- package/dist/{esm/agents → agents}/executor.d.ts +5 -0
- package/dist/agents/executor.js +99 -0
- package/dist/agents/executor.js.map +1 -0
- package/dist/{cjs/agents → agents}/helpers.d.ts +0 -0
- package/dist/agents/helpers.js +21 -0
- package/dist/agents/helpers.js.map +1 -0
- package/dist/{cjs/agents → agents}/index.d.ts +1 -0
- package/dist/{cjs/agents → agents}/index.js +5 -1
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/initialize.d.ts +4 -0
- package/dist/agents/initialize.js +19 -0
- package/dist/agents/initialize.js.map +1 -0
- package/dist/{cjs/agents → agents}/load.d.ts +0 -0
- package/dist/agents/load.js +19 -0
- package/dist/agents/load.js.map +1 -0
- package/dist/{esm/agents → agents}/mrkl/index.d.ts +18 -1
- package/dist/{cjs/agents → agents}/mrkl/index.js +26 -34
- package/dist/agents/mrkl/index.js.map +1 -0
- package/dist/{cjs/agents → agents}/mrkl/prompt.d.ts +0 -0
- package/dist/{cjs/agents → agents}/mrkl/prompt.js +0 -1
- package/dist/agents/mrkl/prompt.js.map +1 -0
- package/dist/{cjs/agents → agents}/tests/agent.test.d.ts +0 -0
- package/dist/agents/tests/agent.test.js +35 -0
- package/dist/agents/tests/agent.test.js.map +1 -0
- package/dist/{cjs/chains/tests/llm_chain.test.d.ts → agents/tests/calculator.test.d.ts} +0 -0
- package/dist/agents/tests/calculator.test.js +30 -0
- package/dist/agents/tests/calculator.test.js.map +1 -0
- package/dist/agents/tools/base.d.ts +6 -0
- package/dist/agents/tools/base.js +15 -0
- package/dist/agents/tools/base.js.map +1 -0
- package/dist/agents/tools/calculator.d.ts +6 -0
- package/dist/agents/tools/calculator.js +33 -0
- package/dist/agents/tools/calculator.js.map +1 -0
- package/dist/agents/tools/index.d.ts +3 -0
- package/dist/agents/tools/index.js +10 -0
- package/dist/agents/tools/index.js.map +1 -0
- package/dist/{cjs/agents → agents}/tools/llm-math.d.ts +0 -0
- package/dist/{cjs/agents → agents}/tools/llm-math.js +0 -0
- package/dist/{cjs/agents → agents}/tools/llm-math.js.map +1 -1
- package/dist/agents/tools/serpapi.d.ts +18 -0
- package/dist/agents/tools/serpapi.js +93 -0
- package/dist/agents/tools/serpapi.js.map +1 -0
- package/dist/{cjs/agents → agents}/types.d.ts +0 -0
- package/dist/{cjs/agents → agents}/types.js +0 -0
- package/dist/{cjs/agents → agents}/types.js.map +1 -1
- package/dist/{cjs/cache.d.ts → cache.d.ts} +0 -0
- package/dist/{cjs/cache.js → cache.js} +0 -0
- package/dist/cache.js.map +1 -0
- package/dist/chains/base.d.ts +42 -0
- package/dist/chains/base.js +67 -0
- package/dist/chains/base.js.map +1 -0
- package/dist/chains/chat_vector_db_chain.d.ts +41 -0
- package/dist/chains/chat_vector_db_chain.js +146 -0
- package/dist/chains/chat_vector_db_chain.js.map +1 -0
- package/dist/chains/combine_docs_chain.d.ts +35 -0
- package/dist/chains/combine_docs_chain.js +75 -0
- package/dist/chains/combine_docs_chain.js.map +1 -0
- package/dist/chains/conversation.d.ts +12 -0
- package/dist/chains/conversation.js +29 -0
- package/dist/chains/conversation.js.map +1 -0
- package/dist/chains/index.d.ts +7 -0
- package/dist/chains/index.js +19 -0
- package/dist/chains/index.js.map +1 -0
- package/dist/{cjs/chains → chains}/llm_chain.d.ts +36 -1
- package/dist/chains/llm_chain.js +115 -0
- package/dist/chains/llm_chain.js.map +1 -0
- package/dist/chains/load.d.ts +21 -0
- package/dist/chains/load.js +37 -0
- package/dist/chains/load.js.map +1 -0
- package/dist/chains/question_answering/load.d.ts +3 -0
- package/dist/chains/question_answering/load.js +13 -0
- package/dist/chains/question_answering/load.js.map +1 -0
- package/dist/chains/question_answering/stuff_prompts.d.ts +2 -0
- package/dist/chains/question_answering/stuff_prompts.js +10 -0
- package/dist/chains/question_answering/stuff_prompts.js.map +1 -0
- package/dist/{cjs/prompt → chains/question_answering}/tests/load.test.d.ts +0 -0
- package/dist/chains/question_answering/tests/load.test.js +18 -0
- package/dist/chains/question_answering/tests/load.test.js.map +1 -0
- package/dist/{cjs/llms/tests/openai.test.d.ts → chains/tests/chat_vector_db_qa_chain.test.d.ts} +0 -0
- package/dist/chains/tests/chat_vector_db_qa_chain.test.js +35 -0
- package/dist/chains/tests/chat_vector_db_qa_chain.test.js.map +1 -0
- package/dist/{cjs/prompt/tests/template.test.d.ts → chains/tests/combine_docs_chain.test.d.ts} +0 -0
- package/dist/chains/tests/combine_docs_chain.test.js +39 -0
- package/dist/chains/tests/combine_docs_chain.test.js.map +1 -0
- package/dist/{esm/chains → chains}/tests/llm_chain.test.d.ts +0 -0
- package/dist/chains/tests/llm_chain.test.js +29 -0
- package/dist/chains/tests/llm_chain.test.js.map +1 -0
- package/dist/{esm/agents/tests/agent.test.d.ts → chains/tests/vector_db_qa_chain.test.d.ts} +0 -0
- package/dist/chains/tests/vector_db_qa_chain.test.js +46 -0
- package/dist/chains/tests/vector_db_qa_chain.test.js.map +1 -0
- package/dist/chains/vector_db_qa.d.ts +36 -0
- package/dist/chains/vector_db_qa.js +85 -0
- package/dist/chains/vector_db_qa.js.map +1 -0
- package/dist/document.d.ts +13 -0
- package/dist/document.js +28 -0
- package/dist/document.js.map +1 -0
- package/dist/embeddings/base.d.ts +4 -0
- package/dist/embeddings/base.js +7 -0
- package/dist/embeddings/base.js.map +1 -0
- package/dist/embeddings/index.d.ts +1 -0
- package/dist/embeddings/index.js +6 -0
- package/dist/embeddings/index.js.map +1 -0
- package/dist/embeddings/openai.d.ts +20 -0
- package/dist/embeddings/openai.js +86 -0
- package/dist/embeddings/openai.js.map +1 -0
- package/dist/{esm/llms → embeddings}/tests/openai.test.d.ts +0 -0
- package/dist/embeddings/tests/openai.test.js +17 -0
- package/dist/embeddings/tests/openai.test.js.map +1 -0
- package/dist/{cjs/index.d.ts → index.d.ts} +1 -1
- package/dist/{cjs/index.js → index.js} +4 -4
- package/dist/index.js.map +1 -0
- package/dist/llms/base.d.ts +64 -0
- package/dist/llms/base.js +164 -0
- package/dist/llms/base.js.map +1 -0
- package/dist/llms/cohere.d.ts +24 -0
- package/dist/llms/cohere.js +55 -0
- package/dist/llms/cohere.js.map +1 -0
- package/dist/{esm/llms → llms}/index.d.ts +20 -0
- package/dist/{cjs/llms → llms}/index.js +3 -1
- package/dist/llms/index.js.map +1 -0
- package/dist/llms/load.d.ts +11 -0
- package/dist/llms/load.js +17 -0
- package/dist/llms/load.js.map +1 -0
- package/dist/llms/openai.d.ts +125 -0
- package/dist/{cjs/llms → llms}/openai.js +96 -58
- package/dist/llms/openai.js.map +1 -0
- package/dist/{esm/prompt/tests/load.test.d.ts → llms/tests/cohere.test.d.ts} +0 -0
- package/dist/llms/tests/cohere.test.js +10 -0
- package/dist/llms/tests/cohere.test.js.map +1 -0
- package/dist/{esm/prompt/tests/template.test.d.ts → llms/tests/openai.test.d.ts} +0 -0
- package/dist/llms/tests/openai.test.js +10 -0
- package/dist/llms/tests/openai.test.js.map +1 -0
- package/dist/memory/base.d.ts +7 -0
- package/dist/memory/base.js +7 -0
- package/dist/memory/base.js.map +1 -0
- package/dist/memory/buffer_memory.d.ts +15 -0
- package/dist/memory/buffer_memory.js +57 -0
- package/dist/memory/buffer_memory.js.map +1 -0
- package/dist/memory/index.d.ts +2 -0
- package/dist/memory/index.js +8 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/tests/buffer_memory.test.d.ts +1 -0
- package/dist/memory/tests/buffer_memory.test.js +17 -0
- package/dist/memory/tests/buffer_memory.test.js.map +1 -0
- package/dist/prompts/base.d.ts +58 -0
- package/dist/prompts/base.js +53 -0
- package/dist/prompts/base.js.map +1 -0
- package/dist/{esm/prompt → prompts}/few_shot.d.ts +36 -1
- package/dist/{cjs/prompt → prompts}/few_shot.js +27 -33
- package/dist/prompts/few_shot.js.map +1 -0
- package/dist/{cjs/prompt → prompts}/index.d.ts +1 -0
- package/dist/{cjs/prompt → prompts}/index.js +3 -1
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/load.d.ts +19 -0
- package/dist/prompts/load.js +33 -0
- package/dist/prompts/load.js.map +1 -0
- package/dist/{cjs/prompt → prompts}/parser.d.ts +30 -0
- package/dist/{cjs/prompt → prompts}/parser.js +21 -0
- package/dist/prompts/parser.js.map +1 -0
- package/dist/prompts/prompt.d.ts +76 -0
- package/dist/{cjs/prompt → prompts}/prompt.js +38 -18
- package/dist/prompts/prompt.js.map +1 -0
- package/dist/{cjs/prompt → prompts}/template.d.ts +0 -0
- package/dist/{cjs/prompt → prompts}/template.js +0 -0
- package/dist/prompts/template.js.map +1 -0
- package/dist/prompts/tests/load.test.d.ts +1 -0
- package/dist/prompts/tests/load.test.js +21 -0
- package/dist/prompts/tests/load.test.js.map +1 -0
- package/dist/prompts/tests/template.test.d.ts +1 -0
- package/dist/{cjs/prompt → prompts}/tests/template.test.js +0 -0
- package/dist/prompts/tests/template.test.js.map +1 -0
- package/dist/text_splitter.d.ts +32 -0
- package/dist/text_splitter.js +167 -0
- package/dist/text_splitter.js.map +1 -0
- package/dist/util/hub.d.ts +2 -0
- package/dist/{cjs/util → util}/hub.js +5 -14
- package/dist/util/hub.js.map +1 -0
- package/dist/{esm/util → util}/index.d.ts +1 -0
- package/dist/{cjs/util → util}/index.js +13 -25
- package/dist/util/index.js.map +1 -0
- package/dist/vectorstores/base.d.ts +18 -0
- package/dist/vectorstores/base.js +38 -0
- package/dist/vectorstores/base.js.map +1 -0
- package/dist/vectorstores/hnswlib.d.ts +19 -0
- package/dist/vectorstores/hnswlib.js +129 -0
- package/dist/vectorstores/hnswlib.js.map +1 -0
- package/dist/vectorstores/index.d.ts +1 -0
- package/dist/vectorstores/index.js +6 -0
- package/dist/vectorstores/index.js.map +1 -0
- package/dist/vectorstores/tests/hnswlib.test.d.ts +1 -0
- package/dist/vectorstores/tests/hnswlib.test.js +44 -0
- package/dist/vectorstores/tests/hnswlib.test.js.map +1 -0
- package/document.d.ts +1 -0
- package/document.js +1 -0
- package/embeddings.d.ts +1 -0
- package/embeddings.js +1 -0
- package/llms.d.ts +1 -0
- package/llms.js +1 -0
- package/memory.d.ts +1 -0
- package/memory.js +1 -0
- package/package.json +53 -44
- package/prompts.d.ts +1 -0
- package/prompts.js +1 -0
- package/text_splitter.d.ts +1 -0
- package/text_splitter.js +1 -0
- package/tools.d.ts +1 -0
- package/tools.js +1 -0
- package/vectorstores.d.ts +1 -0
- package/vectorstores.js +1 -0
- package/dist/cjs/agents/agent.d.ts +0 -42
- package/dist/cjs/agents/agent.js +0 -129
- package/dist/cjs/agents/agent.js.map +0 -1
- package/dist/cjs/agents/executor.d.ts +0 -27
- package/dist/cjs/agents/executor.js +0 -105
- package/dist/cjs/agents/executor.js.map +0 -1
- package/dist/cjs/agents/helpers.js +0 -30
- package/dist/cjs/agents/helpers.js.map +0 -1
- package/dist/cjs/agents/index.js.map +0 -1
- package/dist/cjs/agents/load.js +0 -28
- package/dist/cjs/agents/load.js.map +0 -1
- package/dist/cjs/agents/mrkl/index.d.ts +0 -33
- package/dist/cjs/agents/mrkl/index.js.map +0 -1
- package/dist/cjs/agents/mrkl/prompt.js.map +0 -1
- package/dist/cjs/agents/tests/agent.test.js +0 -31
- package/dist/cjs/agents/tests/agent.test.js.map +0 -1
- package/dist/cjs/agents/tools/index.d.ts +0 -7
- package/dist/cjs/agents/tools/index.js +0 -6
- package/dist/cjs/agents/tools/index.js.map +0 -1
- package/dist/cjs/agents/tools/serpapi.d.ts +0 -3
- package/dist/cjs/agents/tools/serpapi.js +0 -50
- package/dist/cjs/agents/tools/serpapi.js.map +0 -1
- package/dist/cjs/cache.js.map +0 -1
- package/dist/cjs/chains/base.d.ts +0 -12
- package/dist/cjs/chains/base.js +0 -23
- package/dist/cjs/chains/base.js.map +0 -1
- package/dist/cjs/chains/index.d.ts +0 -3
- package/dist/cjs/chains/index.js +0 -10
- package/dist/cjs/chains/index.js.map +0 -1
- package/dist/cjs/chains/llm_chain.js +0 -83
- package/dist/cjs/chains/llm_chain.js.map +0 -1
- package/dist/cjs/chains/llm_math_chain.d.ts +0 -0
- package/dist/cjs/chains/llm_math_chain.js +0 -129
- package/dist/cjs/chains/llm_math_chain.js.map +0 -1
- package/dist/cjs/chains/load.d.ts +0 -2
- package/dist/cjs/chains/load.js +0 -29
- package/dist/cjs/chains/load.js.map +0 -1
- package/dist/cjs/chains/tests/llm_chain.test.js +0 -32
- package/dist/cjs/chains/tests/llm_chain.test.js.map +0 -1
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/llms/base.d.ts +0 -23
- package/dist/cjs/llms/base.js +0 -159
- package/dist/cjs/llms/base.js.map +0 -1
- package/dist/cjs/llms/index.d.ts +0 -18
- package/dist/cjs/llms/index.js.map +0 -1
- package/dist/cjs/llms/load.d.ts +0 -3
- package/dist/cjs/llms/load.js +0 -9
- package/dist/cjs/llms/load.js.map +0 -1
- package/dist/cjs/llms/openai.d.ts +0 -63
- package/dist/cjs/llms/openai.js.map +0 -1
- package/dist/cjs/llms/tests/openai.test.js +0 -19
- package/dist/cjs/llms/tests/openai.test.js.map +0 -1
- package/dist/cjs/prompt/base.d.ts +0 -19
- package/dist/cjs/prompt/base.js +0 -54
- package/dist/cjs/prompt/base.js.map +0 -1
- package/dist/cjs/prompt/few_shot.d.ts +0 -47
- package/dist/cjs/prompt/few_shot.js.map +0 -1
- package/dist/cjs/prompt/index.js.map +0 -1
- package/dist/cjs/prompt/load.d.ts +0 -2
- package/dist/cjs/prompt/load.js +0 -25
- package/dist/cjs/prompt/load.js.map +0 -1
- package/dist/cjs/prompt/parser.js.map +0 -1
- package/dist/cjs/prompt/prompt.d.ts +0 -28
- package/dist/cjs/prompt/prompt.js.map +0 -1
- package/dist/cjs/prompt/template.js.map +0 -1
- package/dist/cjs/prompt/tests/load.test.js +0 -30
- package/dist/cjs/prompt/tests/load.test.js.map +0 -1
- package/dist/cjs/prompt/tests/template.test.js.map +0 -1
- package/dist/cjs/util/hub.d.ts +0 -1
- package/dist/cjs/util/hub.js.map +0 -1
- package/dist/cjs/util/index.d.ts +0 -12
- package/dist/cjs/util/index.js.map +0 -1
- package/dist/esm/agents/agent.d.ts +0 -42
- package/dist/esm/agents/agent.js +0 -124
- package/dist/esm/agents/agent.js.map +0 -1
- package/dist/esm/agents/executor.js +0 -101
- package/dist/esm/agents/executor.js.map +0 -1
- package/dist/esm/agents/helpers.d.ts +0 -3
- package/dist/esm/agents/helpers.js +0 -26
- package/dist/esm/agents/helpers.js.map +0 -1
- package/dist/esm/agents/index.d.ts +0 -6
- package/dist/esm/agents/index.js +0 -5
- package/dist/esm/agents/index.js.map +0 -1
- package/dist/esm/agents/load.d.ts +0 -6
- package/dist/esm/agents/load.js +0 -24
- package/dist/esm/agents/load.js.map +0 -1
- package/dist/esm/agents/mrkl/index.js +0 -106
- package/dist/esm/agents/mrkl/index.js.map +0 -1
- package/dist/esm/agents/mrkl/prompt.d.ts +0 -3
- package/dist/esm/agents/mrkl/prompt.js +0 -17
- package/dist/esm/agents/mrkl/prompt.js.map +0 -1
- package/dist/esm/agents/tests/agent.test.js +0 -29
- package/dist/esm/agents/tests/agent.test.js.map +0 -1
- package/dist/esm/agents/tools/index.d.ts +0 -7
- package/dist/esm/agents/tools/index.js +0 -2
- package/dist/esm/agents/tools/index.js.map +0 -1
- package/dist/esm/agents/tools/llm-math.d.ts +0 -0
- package/dist/esm/agents/tools/llm-math.js +0 -2
- package/dist/esm/agents/tools/llm-math.js.map +0 -1
- package/dist/esm/agents/tools/serpapi.d.ts +0 -3
- package/dist/esm/agents/tools/serpapi.js +0 -46
- package/dist/esm/agents/tools/serpapi.js.map +0 -1
- package/dist/esm/agents/types.d.ts +0 -25
- package/dist/esm/agents/types.js +0 -2
- package/dist/esm/agents/types.js.map +0 -1
- package/dist/esm/cache.d.ts +0 -11
- package/dist/esm/cache.js +0 -22
- package/dist/esm/cache.js.map +0 -1
- package/dist/esm/chains/base.d.ts +0 -12
- package/dist/esm/chains/base.js +0 -19
- package/dist/esm/chains/base.js.map +0 -1
- package/dist/esm/chains/index.d.ts +0 -3
- package/dist/esm/chains/index.js +0 -4
- package/dist/esm/chains/index.js.map +0 -1
- package/dist/esm/chains/llm_chain.d.ts +0 -30
- package/dist/esm/chains/llm_chain.js +0 -79
- package/dist/esm/chains/llm_chain.js.map +0 -1
- package/dist/esm/chains/llm_math_chain.d.ts +0 -0
- package/dist/esm/chains/llm_math_chain.js +0 -129
- package/dist/esm/chains/llm_math_chain.js.map +0 -1
- package/dist/esm/chains/load.d.ts +0 -2
- package/dist/esm/chains/load.js +0 -25
- package/dist/esm/chains/load.js.map +0 -1
- package/dist/esm/chains/tests/llm_chain.test.js +0 -30
- package/dist/esm/chains/tests/llm_chain.test.js.map +0 -1
- package/dist/esm/index.d.ts +0 -3
- package/dist/esm/index.js +0 -4
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/llms/base.d.ts +0 -23
- package/dist/esm/llms/base.js +0 -154
- package/dist/esm/llms/base.js.map +0 -1
- package/dist/esm/llms/index.js +0 -4
- package/dist/esm/llms/index.js.map +0 -1
- package/dist/esm/llms/load.d.ts +0 -3
- package/dist/esm/llms/load.js +0 -5
- package/dist/esm/llms/load.js.map +0 -1
- package/dist/esm/llms/openai.d.ts +0 -63
- package/dist/esm/llms/openai.js +0 -198
- package/dist/esm/llms/openai.js.map +0 -1
- package/dist/esm/llms/tests/openai.test.js +0 -17
- package/dist/esm/llms/tests/openai.test.js.map +0 -1
- package/dist/esm/prompt/base.d.ts +0 -19
- package/dist/esm/prompt/base.js +0 -50
- package/dist/esm/prompt/base.js.map +0 -1
- package/dist/esm/prompt/few_shot.js +0 -139
- package/dist/esm/prompt/few_shot.js.map +0 -1
- package/dist/esm/prompt/index.d.ts +0 -3
- package/dist/esm/prompt/index.js +0 -4
- package/dist/esm/prompt/index.js.map +0 -1
- package/dist/esm/prompt/load.d.ts +0 -2
- package/dist/esm/prompt/load.js +0 -21
- package/dist/esm/prompt/load.js.map +0 -1
- package/dist/esm/prompt/parser.d.ts +0 -40
- package/dist/esm/prompt/parser.js +0 -86
- package/dist/esm/prompt/parser.js.map +0 -1
- package/dist/esm/prompt/prompt.d.ts +0 -28
- package/dist/esm/prompt/prompt.js +0 -87
- package/dist/esm/prompt/prompt.js.map +0 -1
- package/dist/esm/prompt/template.d.ts +0 -16
- package/dist/esm/prompt/template.js +0 -80
- package/dist/esm/prompt/template.js.map +0 -1
- package/dist/esm/prompt/tests/load.test.js +0 -25
- package/dist/esm/prompt/tests/load.test.js.map +0 -1
- package/dist/esm/prompt/tests/template.test.js +0 -25
- package/dist/esm/prompt/tests/template.test.js.map +0 -1
- package/dist/esm/util/hub.d.ts +0 -1
- package/dist/esm/util/hub.js +0 -43
- package/dist/esm/util/hub.js.map +0 -1
- package/dist/esm/util/index.js +0 -74
- package/dist/esm/util/index.js.map +0 -1
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const openai_1 = require("../../../llms/openai");
|
|
5
|
+
const load_1 = require("../load");
|
|
6
|
+
const document_1 = require("../../../document");
|
|
7
|
+
(0, globals_1.test)("Test loadQAChain", async () => {
|
|
8
|
+
const model = new openai_1.OpenAI({});
|
|
9
|
+
const chain = (0, load_1.loadQAChain)(model);
|
|
10
|
+
const docs = [
|
|
11
|
+
new document_1.Document({ pageContent: "foo" }),
|
|
12
|
+
new document_1.Document({ pageContent: "bar" }),
|
|
13
|
+
new document_1.Document({ pageContent: "baz" }),
|
|
14
|
+
];
|
|
15
|
+
const res = await chain.call({ input_documents: docs, question: "Whats up" });
|
|
16
|
+
console.log({ res });
|
|
17
|
+
});
|
|
18
|
+
//# sourceMappingURL=load.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load.test.js","sourceRoot":"","sources":["../../../../chains/question_answering/tests/load.test.ts"],"names":[],"mappings":";;AAAA,2CAAqC;AACrC,iDAA8C;AAC9C,kCAAsC;AACtC,gDAA6C;AAE7C,IAAA,cAAI,EAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;IAClC,MAAM,KAAK,GAAG,IAAI,eAAM,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,IAAA,kBAAW,EAAC,KAAK,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG;QACX,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;KACrC,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;IAC9E,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
|
package/dist/{cjs/llms/tests/openai.test.d.ts → chains/tests/chat_vector_db_qa_chain.test.d.ts}
RENAMED
|
File without changes
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const openai_1 = require("../../llms/openai");
|
|
5
|
+
const prompts_1 = require("../../prompts");
|
|
6
|
+
const llm_chain_1 = require("../llm_chain");
|
|
7
|
+
const combine_docs_chain_1 = require("../combine_docs_chain");
|
|
8
|
+
const chat_vector_db_chain_1 = require("../chat_vector_db_chain");
|
|
9
|
+
const hnswlib_1 = require("../../vectorstores/hnswlib");
|
|
10
|
+
const embeddings_1 = require("../../embeddings");
|
|
11
|
+
(0, globals_1.test)("Test ChatVectorDBQAChain", async () => {
|
|
12
|
+
const model = new openai_1.OpenAI({});
|
|
13
|
+
const prompt = prompts_1.PromptTemplate.fromTemplate("Print {question}, and ignore {chat_history}");
|
|
14
|
+
const vectorStore = await hnswlib_1.HNSWLib.fromTexts(["Hello world", "Bye bye", "hello nice world", "bye", "hi"], [{ id: 2 }, { id: 1 }, { id: 3 }, { id: 4 }, { id: 5 }], new embeddings_1.OpenAIEmbeddings());
|
|
15
|
+
const llmChain = new llm_chain_1.LLMChain({ prompt, llm: model });
|
|
16
|
+
const combineDocsChain = new combine_docs_chain_1.StuffDocumentsChain({
|
|
17
|
+
llmChain,
|
|
18
|
+
documentVariableName: "foo",
|
|
19
|
+
});
|
|
20
|
+
const chain = new chat_vector_db_chain_1.ChatVectorDBQAChain({
|
|
21
|
+
combineDocumentsChain: combineDocsChain,
|
|
22
|
+
vectorstore: vectorStore,
|
|
23
|
+
questionGeneratorChain: llmChain,
|
|
24
|
+
});
|
|
25
|
+
const res = await chain.call({ question: "foo", chat_history: "bar" });
|
|
26
|
+
console.log({ res });
|
|
27
|
+
});
|
|
28
|
+
(0, globals_1.test)("Test ChatVectorDBQAChain from LLM", async () => {
|
|
29
|
+
const model = new openai_1.OpenAI({});
|
|
30
|
+
const vectorStore = await hnswlib_1.HNSWLib.fromTexts(["Hello world", "Bye bye", "hello nice world", "bye", "hi"], [{ id: 2 }, { id: 1 }, { id: 3 }, { id: 4 }, { id: 5 }], new embeddings_1.OpenAIEmbeddings());
|
|
31
|
+
const chain = chat_vector_db_chain_1.ChatVectorDBQAChain.fromLLM(model, vectorStore);
|
|
32
|
+
const res = await chain.call({ question: "foo", chat_history: "bar" });
|
|
33
|
+
console.log({ res });
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=chat_vector_db_qa_chain.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat_vector_db_qa_chain.test.js","sourceRoot":"","sources":["../../../chains/tests/chat_vector_db_qa_chain.test.ts"],"names":[],"mappings":";;AAAA,2CAAqC;AACrC,8CAA2C;AAC3C,2CAA+C;AAC/C,4CAAwC;AACxC,8DAA4D;AAC5D,kEAA8D;AAC9D,wDAAqD;AACrD,iDAAoD;AAEpD,IAAA,cAAI,EAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,KAAK,GAAG,IAAI,eAAM,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,wBAAc,CAAC,YAAY,CACxC,6CAA6C,CAC9C,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,iBAAO,CAAC,SAAS,CACzC,CAAC,aAAa,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,EAC3D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EACvD,IAAI,6BAAgB,EAAE,CACvB,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,oBAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAI,wCAAmB,CAAC;QAC/C,QAAQ;QACR,oBAAoB,EAAE,KAAK;KAC5B,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,0CAAmB,CAAC;QACpC,qBAAqB,EAAE,gBAAgB;QACvC,WAAW,EAAE,WAAW;QACxB,sBAAsB,EAAE,QAAQ;KACjC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAA,cAAI,EAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;IACnD,MAAM,KAAK,GAAG,IAAI,eAAM,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,WAAW,GAAG,MAAM,iBAAO,CAAC,SAAS,CACzC,CAAC,aAAa,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,EAC3D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EACvD,IAAI,6BAAgB,EAAE,CACvB,CAAC;IACF,MAAM,KAAK,GAAG,0CAAmB,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
|
package/dist/{cjs/prompt/tests/template.test.d.ts → chains/tests/combine_docs_chain.test.d.ts}
RENAMED
|
File without changes
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const openai_1 = require("../../llms/openai");
|
|
5
|
+
const prompts_1 = require("../../prompts");
|
|
6
|
+
const llm_chain_1 = require("../llm_chain");
|
|
7
|
+
const load_1 = require("../load");
|
|
8
|
+
const combine_docs_chain_1 = require("../combine_docs_chain");
|
|
9
|
+
const document_1 = require("../../document");
|
|
10
|
+
(0, globals_1.test)("Test StuffDocumentsChain", async () => {
|
|
11
|
+
const model = new openai_1.OpenAI({});
|
|
12
|
+
const prompt = new prompts_1.PromptTemplate({
|
|
13
|
+
template: "Print {foo}",
|
|
14
|
+
inputVariables: ["foo"],
|
|
15
|
+
});
|
|
16
|
+
const llmChain = new llm_chain_1.LLMChain({ prompt, llm: model });
|
|
17
|
+
const chain = new combine_docs_chain_1.StuffDocumentsChain({
|
|
18
|
+
llmChain,
|
|
19
|
+
documentVariableName: "foo",
|
|
20
|
+
});
|
|
21
|
+
const docs = [
|
|
22
|
+
new document_1.Document({ pageContent: "foo" }),
|
|
23
|
+
new document_1.Document({ pageContent: "bar" }),
|
|
24
|
+
new document_1.Document({ pageContent: "baz" }),
|
|
25
|
+
];
|
|
26
|
+
const res = await chain.call({ input_documents: docs });
|
|
27
|
+
console.log({ res });
|
|
28
|
+
});
|
|
29
|
+
(0, globals_1.test)("Load chain from hub", async () => {
|
|
30
|
+
const chain = await (0, load_1.loadChain)("lc://chains/question_answering/stuff/chain.json");
|
|
31
|
+
const docs = [
|
|
32
|
+
new document_1.Document({ pageContent: "foo" }),
|
|
33
|
+
new document_1.Document({ pageContent: "bar" }),
|
|
34
|
+
new document_1.Document({ pageContent: "baz" }),
|
|
35
|
+
];
|
|
36
|
+
const res = await chain.call({ input_documents: docs, question: "what up" });
|
|
37
|
+
console.log({ res });
|
|
38
|
+
});
|
|
39
|
+
//# sourceMappingURL=combine_docs_chain.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"combine_docs_chain.test.js","sourceRoot":"","sources":["../../../chains/tests/combine_docs_chain.test.ts"],"names":[],"mappings":";;AAAA,2CAAqC;AACrC,8CAA2C;AAC3C,2CAA+C;AAC/C,4CAAwC;AACxC,kCAAoC;AACpC,8DAA4D;AAC5D,6CAA0C;AAE1C,IAAA,cAAI,EAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,KAAK,GAAG,IAAI,eAAM,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,IAAI,wBAAc,CAAC;QAChC,QAAQ,EAAE,aAAa;QACvB,cAAc,EAAE,CAAC,KAAK,CAAC;KACxB,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,IAAI,oBAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,IAAI,wCAAmB,CAAC;QACpC,QAAQ;QACR,oBAAoB,EAAE,KAAK;KAC5B,CAAC,CAAC;IACH,MAAM,IAAI,GAAG;QACX,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;KACrC,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAA,cAAI,EAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;IACrC,MAAM,KAAK,GAAG,MAAM,IAAA,gBAAS,EAC3B,iDAAiD,CAClD,CAAC;IACF,MAAM,IAAI,GAAG;QACX,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;KACrC,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7E,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
|
|
File without changes
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const openai_1 = require("../../llms/openai");
|
|
5
|
+
const prompts_1 = require("../../prompts");
|
|
6
|
+
const llm_chain_1 = require("../llm_chain");
|
|
7
|
+
const load_1 = require("../load");
|
|
8
|
+
(0, globals_1.test)("Test OpenAI", async () => {
|
|
9
|
+
const model = new openai_1.OpenAI({});
|
|
10
|
+
const prompt = new prompts_1.PromptTemplate({
|
|
11
|
+
template: "Print {foo}",
|
|
12
|
+
inputVariables: ["foo"],
|
|
13
|
+
});
|
|
14
|
+
const chain = new llm_chain_1.LLMChain({ prompt, llm: model });
|
|
15
|
+
const res = await chain.call({ foo: "my favorite color" });
|
|
16
|
+
console.log({ res });
|
|
17
|
+
});
|
|
18
|
+
(0, globals_1.test)("Load chain from hub", async () => {
|
|
19
|
+
const chain = await (0, load_1.loadChain)("lc://chains/hello-world/chain.json");
|
|
20
|
+
const res = await chain.call({ topic: "my favorite color" });
|
|
21
|
+
console.log({ res });
|
|
22
|
+
});
|
|
23
|
+
(0, globals_1.test)("Test ConversationChain", async () => {
|
|
24
|
+
const model = new openai_1.OpenAI({});
|
|
25
|
+
const chain = new llm_chain_1.ConversationChain({ llm: model });
|
|
26
|
+
const res = await chain.call({ input: "my favorite color" });
|
|
27
|
+
console.log({ res });
|
|
28
|
+
});
|
|
29
|
+
//# sourceMappingURL=llm_chain.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm_chain.test.js","sourceRoot":"","sources":["../../../chains/tests/llm_chain.test.ts"],"names":[],"mappings":";;AAAA,2CAAqC;AACrC,8CAA2C;AAC3C,2CAA+C;AAC/C,4CAA2D;AAC3D,kCAAoC;AAEpC,IAAA,cAAI,EAAC,aAAa,EAAE,KAAK,IAAI,EAAE;IAC7B,MAAM,KAAK,GAAG,IAAI,eAAM,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,IAAI,wBAAc,CAAC;QAChC,QAAQ,EAAE,aAAa;QACvB,cAAc,EAAE,CAAC,KAAK,CAAC;KACxB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,oBAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAA,cAAI,EAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;IACrC,MAAM,KAAK,GAAG,MAAM,IAAA,gBAAS,EAAC,oCAAoC,CAAC,CAAC;IACpE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAA,cAAI,EAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;IACxC,MAAM,KAAK,GAAG,IAAI,eAAM,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,IAAI,6BAAiB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
|
|
File without changes
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const openai_1 = require("../../llms/openai");
|
|
5
|
+
const prompts_1 = require("../../prompts");
|
|
6
|
+
const llm_chain_1 = require("../llm_chain");
|
|
7
|
+
const load_1 = require("../load");
|
|
8
|
+
const combine_docs_chain_1 = require("../combine_docs_chain");
|
|
9
|
+
const vector_db_qa_1 = require("../vector_db_qa");
|
|
10
|
+
const hnswlib_1 = require("../../vectorstores/hnswlib");
|
|
11
|
+
const embeddings_1 = require("../../embeddings");
|
|
12
|
+
(0, globals_1.test)("Test VectorDBQAChain", async () => {
|
|
13
|
+
const model = new openai_1.OpenAI({});
|
|
14
|
+
const prompt = new prompts_1.PromptTemplate({
|
|
15
|
+
template: "Print {foo}",
|
|
16
|
+
inputVariables: ["foo"],
|
|
17
|
+
});
|
|
18
|
+
const vectorStore = await hnswlib_1.HNSWLib.fromTexts(["Hello world", "Bye bye", "hello nice world", "bye", "hi"], [{ id: 2 }, { id: 1 }, { id: 3 }, { id: 4 }, { id: 5 }], new embeddings_1.OpenAIEmbeddings());
|
|
19
|
+
const llmChain = new llm_chain_1.LLMChain({ prompt, llm: model });
|
|
20
|
+
const combineDocsChain = new combine_docs_chain_1.StuffDocumentsChain({
|
|
21
|
+
llmChain,
|
|
22
|
+
documentVariableName: "foo",
|
|
23
|
+
});
|
|
24
|
+
const chain = new vector_db_qa_1.VectorDBQAChain({
|
|
25
|
+
combineDocumentsChain: combineDocsChain,
|
|
26
|
+
vectorstore: vectorStore,
|
|
27
|
+
});
|
|
28
|
+
const res = await chain.call({ query: "What up" });
|
|
29
|
+
console.log({ res });
|
|
30
|
+
});
|
|
31
|
+
(0, globals_1.test)("Test VectorDBQAChain from LLM", async () => {
|
|
32
|
+
const model = new openai_1.OpenAI({});
|
|
33
|
+
const vectorStore = await hnswlib_1.HNSWLib.fromTexts(["Hello world", "Bye bye", "hello nice world", "bye", "hi"], [{ id: 2 }, { id: 1 }, { id: 3 }, { id: 4 }, { id: 5 }], new embeddings_1.OpenAIEmbeddings());
|
|
34
|
+
const chain = vector_db_qa_1.VectorDBQAChain.fromLLM(model, vectorStore);
|
|
35
|
+
const res = await chain.call({ query: "What up" });
|
|
36
|
+
console.log({ res });
|
|
37
|
+
});
|
|
38
|
+
(0, globals_1.test)("Load chain from hub", async () => {
|
|
39
|
+
const vectorStore = await hnswlib_1.HNSWLib.fromTexts(["Hello world", "Bye bye", "hello nice world", "bye", "hi"], [{ id: 2 }, { id: 1 }, { id: 3 }, { id: 4 }, { id: 5 }], new embeddings_1.OpenAIEmbeddings());
|
|
40
|
+
const chain = await (0, load_1.loadChain)("lc://chains/vector-db-qa/stuff/chain.json", {
|
|
41
|
+
vectorstore: vectorStore,
|
|
42
|
+
});
|
|
43
|
+
const res = await chain.call({ query: "what up" });
|
|
44
|
+
console.log({ res });
|
|
45
|
+
});
|
|
46
|
+
//# sourceMappingURL=vector_db_qa_chain.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vector_db_qa_chain.test.js","sourceRoot":"","sources":["../../../chains/tests/vector_db_qa_chain.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { BaseChain, ChainValues, SerializedStuffDocumentsChain, StuffDocumentsChain } from "./index";
|
|
2
|
+
import { VectorStore } from "../vectorstores/base";
|
|
3
|
+
import { BaseLLM } from "../llms";
|
|
4
|
+
export type LoadValues = Record<string, any>;
|
|
5
|
+
export interface VectorDBQAChainInput {
|
|
6
|
+
vectorstore: VectorStore;
|
|
7
|
+
k: number;
|
|
8
|
+
combineDocumentsChain: StuffDocumentsChain;
|
|
9
|
+
outputKey: string;
|
|
10
|
+
inputKey: string;
|
|
11
|
+
}
|
|
12
|
+
export type SerializedVectorDBQAChain = {
|
|
13
|
+
_type: "vector_db_qa";
|
|
14
|
+
k: number;
|
|
15
|
+
combine_documents_chain: SerializedStuffDocumentsChain;
|
|
16
|
+
combine_documents_chain_path?: string;
|
|
17
|
+
};
|
|
18
|
+
export declare class VectorDBQAChain extends BaseChain implements VectorDBQAChainInput {
|
|
19
|
+
k: number;
|
|
20
|
+
inputKey: string;
|
|
21
|
+
outputKey: string;
|
|
22
|
+
vectorstore: VectorStore;
|
|
23
|
+
combineDocumentsChain: StuffDocumentsChain;
|
|
24
|
+
constructor(fields: {
|
|
25
|
+
vectorstore: VectorStore;
|
|
26
|
+
combineDocumentsChain: StuffDocumentsChain;
|
|
27
|
+
inputKey?: string;
|
|
28
|
+
outputKey?: string;
|
|
29
|
+
k?: number;
|
|
30
|
+
});
|
|
31
|
+
_call(values: ChainValues): Promise<ChainValues>;
|
|
32
|
+
_chainType(): "vector_db_qa";
|
|
33
|
+
static deserialize(data: SerializedVectorDBQAChain, values: LoadValues): Promise<VectorDBQAChain>;
|
|
34
|
+
serialize(): SerializedVectorDBQAChain;
|
|
35
|
+
static fromLLM(llm: BaseLLM, vectorstore: VectorStore): VectorDBQAChain;
|
|
36
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.VectorDBQAChain = void 0;
|
|
4
|
+
const index_1 = require("./index");
|
|
5
|
+
const util_1 = require("../util");
|
|
6
|
+
class VectorDBQAChain extends index_1.BaseChain {
|
|
7
|
+
constructor(fields) {
|
|
8
|
+
var _a, _b, _c;
|
|
9
|
+
super();
|
|
10
|
+
Object.defineProperty(this, "k", {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
configurable: true,
|
|
13
|
+
writable: true,
|
|
14
|
+
value: 4
|
|
15
|
+
});
|
|
16
|
+
Object.defineProperty(this, "inputKey", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
configurable: true,
|
|
19
|
+
writable: true,
|
|
20
|
+
value: "query"
|
|
21
|
+
});
|
|
22
|
+
Object.defineProperty(this, "outputKey", {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
configurable: true,
|
|
25
|
+
writable: true,
|
|
26
|
+
value: "result"
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(this, "vectorstore", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
configurable: true,
|
|
31
|
+
writable: true,
|
|
32
|
+
value: void 0
|
|
33
|
+
});
|
|
34
|
+
Object.defineProperty(this, "combineDocumentsChain", {
|
|
35
|
+
enumerable: true,
|
|
36
|
+
configurable: true,
|
|
37
|
+
writable: true,
|
|
38
|
+
value: void 0
|
|
39
|
+
});
|
|
40
|
+
this.vectorstore = fields.vectorstore;
|
|
41
|
+
this.combineDocumentsChain = fields.combineDocumentsChain;
|
|
42
|
+
this.inputKey = (_a = fields.inputKey) !== null && _a !== void 0 ? _a : this.inputKey;
|
|
43
|
+
this.outputKey = (_b = fields.outputKey) !== null && _b !== void 0 ? _b : this.outputKey;
|
|
44
|
+
this.k = (_c = fields.k) !== null && _c !== void 0 ? _c : this.k;
|
|
45
|
+
}
|
|
46
|
+
async _call(values) {
|
|
47
|
+
if (!(this.inputKey in values)) {
|
|
48
|
+
throw new Error(`Question key ${this.inputKey} not found.`);
|
|
49
|
+
}
|
|
50
|
+
const question = values[this.inputKey];
|
|
51
|
+
const docs = await this.vectorstore.similaritySearch(question, this.k);
|
|
52
|
+
const inputs = { question, input_documents: docs };
|
|
53
|
+
const result = await this.combineDocumentsChain.call(inputs);
|
|
54
|
+
return result;
|
|
55
|
+
}
|
|
56
|
+
_chainType() {
|
|
57
|
+
return "vector_db_qa";
|
|
58
|
+
}
|
|
59
|
+
static async deserialize(data, values) {
|
|
60
|
+
if (!("vectorstore" in values)) {
|
|
61
|
+
throw new Error(`Need to pass in a vectorstore to deserialize VectorDBQAChain`);
|
|
62
|
+
}
|
|
63
|
+
const { vectorstore } = values;
|
|
64
|
+
const serializedCombineDocumentsChain = (0, util_1.resolveConfigFromFile)("combine_documents_chain", data);
|
|
65
|
+
return new VectorDBQAChain({
|
|
66
|
+
combineDocumentsChain: await index_1.StuffDocumentsChain.deserialize(serializedCombineDocumentsChain),
|
|
67
|
+
k: data.k,
|
|
68
|
+
vectorstore,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
serialize() {
|
|
72
|
+
return {
|
|
73
|
+
_type: this._chainType(),
|
|
74
|
+
combine_documents_chain: this.combineDocumentsChain.serialize(),
|
|
75
|
+
k: this.k,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
static fromLLM(llm, vectorstore) {
|
|
79
|
+
const qaChain = (0, index_1.loadQAChain)(llm);
|
|
80
|
+
const instance = new this({ vectorstore, combineDocumentsChain: qaChain });
|
|
81
|
+
return instance;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
exports.VectorDBQAChain = VectorDBQAChain;
|
|
85
|
+
//# sourceMappingURL=vector_db_qa.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vector_db_qa.js","sourceRoot":"","sources":["../../chains/vector_db_qa.ts"],"names":[],"mappings":";;;AAAA,mCAMiB;AAKjB,kCAAgD;AAmBhD,MAAa,eAAgB,SAAQ,iBAAS;IAW5C,YAAY,MAMX;;QACC,KAAK,EAAE,CAAC;QAjBV;;;;mBAAI,CAAC;WAAC;QAEN;;;;mBAAW,OAAO;WAAC;QAEnB;;;;mBAAY,QAAQ;WAAC;QAErB;;;;;WAAyB;QAEzB;;;;;WAA2C;QAUzC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC1D,IAAI,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,IAAI,CAAC,QAAQ,CAAC;QACjD,IAAI,CAAC,SAAS,GAAG,MAAA,MAAM,CAAC,SAAS,mCAAI,IAAI,CAAC,SAAS,CAAC;QACpD,IAAI,CAAC,CAAC,GAAG,MAAA,MAAM,CAAC,CAAC,mCAAI,IAAI,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAmB;QAC7B,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,QAAQ,aAAa,CAAC,CAAC;SAC7D;QACD,MAAM,QAAQ,GAAW,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,UAAU;QACR,OAAO,cAAuB,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,WAAW,CACtB,IAA+B,EAC/B,MAAkB;QAElB,IAAI,CAAC,CAAC,aAAa,IAAI,MAAM,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;SACH;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAC/B,MAAM,+BAA+B,GAAG,IAAA,4BAAqB,EAG3D,yBAAyB,EAAE,IAAI,CAAC,CAAC;QAEnC,OAAO,IAAI,eAAe,CAAC;YACzB,qBAAqB,EAAE,MAAM,2BAAmB,CAAC,WAAW,CAC1D,+BAA+B,CAChC;YACD,CAAC,EAAE,IAAI,CAAC,CAAC;YACT,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,SAAS;QACP,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE;YACxB,uBAAuB,EAAE,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE;YAC/D,CAAC,EAAE,IAAI,CAAC,CAAC;SACV,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,GAAY,EAAE,WAAwB;QACnD,MAAM,OAAO,GAAG,IAAA,mBAAW,EAAC,GAAG,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3E,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AA9ED,0CA8EC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
interface DocumentParams {
|
|
2
|
+
pageContent: string;
|
|
3
|
+
metadata: Record<string, any>;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Interface for interacting with a document.
|
|
7
|
+
*/
|
|
8
|
+
export declare class Document implements DocumentParams {
|
|
9
|
+
pageContent: string;
|
|
10
|
+
metadata: Record<string, any>;
|
|
11
|
+
constructor(fields?: Partial<DocumentParams>);
|
|
12
|
+
}
|
|
13
|
+
export {};
|
package/dist/document.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Document = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Interface for interacting with a document.
|
|
6
|
+
*/
|
|
7
|
+
class Document {
|
|
8
|
+
constructor(fields) {
|
|
9
|
+
var _a, _b;
|
|
10
|
+
Object.defineProperty(this, "pageContent", {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
configurable: true,
|
|
13
|
+
writable: true,
|
|
14
|
+
value: void 0
|
|
15
|
+
});
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
17
|
+
Object.defineProperty(this, "metadata", {
|
|
18
|
+
enumerable: true,
|
|
19
|
+
configurable: true,
|
|
20
|
+
writable: true,
|
|
21
|
+
value: void 0
|
|
22
|
+
});
|
|
23
|
+
this.pageContent = (_a = fields === null || fields === void 0 ? void 0 : fields.pageContent) !== null && _a !== void 0 ? _a : this.pageContent;
|
|
24
|
+
this.metadata = (_b = fields === null || fields === void 0 ? void 0 : fields.metadata) !== null && _b !== void 0 ? _b : {};
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.Document = Document;
|
|
28
|
+
//# sourceMappingURL=document.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document.js","sourceRoot":"","sources":["../document.ts"],"names":[],"mappings":";;;AAOA;;GAEG;AACH,MAAa,QAAQ;IAMnB,YAAY,MAAgC;;QAL5C;;;;;WAAoB;QAEpB,8DAA8D;QAC9D;;;;;WAA8B;QAG5B,IAAI,CAAC,WAAW,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,mCAAI,IAAI,CAAC,WAAW,CAAC;QAC3D,IAAI,CAAC,QAAQ,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,mCAAI,EAAE,CAAC;IACzC,CAAC;CACF;AAVD,4BAUC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../embeddings/base.ts"],"names":[],"mappings":";;;AAAA,MAAsB,UAAU;CAI/B;AAJD,gCAIC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { OpenAIEmbeddings } from "./openai";
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OpenAIEmbeddings = void 0;
|
|
4
|
+
var openai_1 = require("./openai");
|
|
5
|
+
Object.defineProperty(exports, "OpenAIEmbeddings", { enumerable: true, get: function () { return openai_1.OpenAIEmbeddings; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../embeddings/index.ts"],"names":[],"mappings":";;;AAAA,mCAA4C;AAAnC,0GAAA,gBAAgB,OAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Embeddings } from "./base";
|
|
2
|
+
interface ModelParams {
|
|
3
|
+
modelName: string;
|
|
4
|
+
}
|
|
5
|
+
export declare class OpenAIEmbeddings extends Embeddings implements ModelParams {
|
|
6
|
+
modelName: string;
|
|
7
|
+
batchSize: number;
|
|
8
|
+
maxRetries: number;
|
|
9
|
+
private client;
|
|
10
|
+
constructor(fields?: Partial<ModelParams> & {
|
|
11
|
+
verbose?: boolean;
|
|
12
|
+
batchSize?: number;
|
|
13
|
+
maxRetries?: number;
|
|
14
|
+
openAIApiKey?: string;
|
|
15
|
+
});
|
|
16
|
+
embedDocuments(texts: string[]): Promise<number[][]>;
|
|
17
|
+
embedQuery(text: string): Promise<number[]>;
|
|
18
|
+
private embeddingWithRetry;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OpenAIEmbeddings = void 0;
|
|
4
|
+
const exponential_backoff_1 = require("exponential-backoff");
|
|
5
|
+
const util_1 = require("../util");
|
|
6
|
+
const base_1 = require("./base");
|
|
7
|
+
let Configuration = null;
|
|
8
|
+
let OpenAIApi = null;
|
|
9
|
+
try {
|
|
10
|
+
// eslint-disable-next-line global-require,import/no-extraneous-dependencies
|
|
11
|
+
({ Configuration, OpenAIApi } = require("openai"));
|
|
12
|
+
}
|
|
13
|
+
catch (_a) {
|
|
14
|
+
// ignore error
|
|
15
|
+
}
|
|
16
|
+
class OpenAIEmbeddings extends base_1.Embeddings {
|
|
17
|
+
constructor(fields) {
|
|
18
|
+
var _a, _b, _c;
|
|
19
|
+
super();
|
|
20
|
+
Object.defineProperty(this, "modelName", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
configurable: true,
|
|
23
|
+
writable: true,
|
|
24
|
+
value: "text-embedding-ada-002"
|
|
25
|
+
});
|
|
26
|
+
Object.defineProperty(this, "batchSize", {
|
|
27
|
+
enumerable: true,
|
|
28
|
+
configurable: true,
|
|
29
|
+
writable: true,
|
|
30
|
+
value: 20
|
|
31
|
+
});
|
|
32
|
+
Object.defineProperty(this, "maxRetries", {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
configurable: true,
|
|
35
|
+
writable: true,
|
|
36
|
+
value: 6
|
|
37
|
+
});
|
|
38
|
+
Object.defineProperty(this, "client", {
|
|
39
|
+
enumerable: true,
|
|
40
|
+
configurable: true,
|
|
41
|
+
writable: true,
|
|
42
|
+
value: void 0
|
|
43
|
+
});
|
|
44
|
+
if (Configuration === null || OpenAIApi === null) {
|
|
45
|
+
throw new Error("Please install openai as a dependency with, e.g. `npm install -S openai`");
|
|
46
|
+
}
|
|
47
|
+
this.modelName = (_a = fields === null || fields === void 0 ? void 0 : fields.modelName) !== null && _a !== void 0 ? _a : this.modelName;
|
|
48
|
+
this.batchSize = (_b = fields === null || fields === void 0 ? void 0 : fields.batchSize) !== null && _b !== void 0 ? _b : this.batchSize;
|
|
49
|
+
const clientConfig = new Configuration({
|
|
50
|
+
apiKey: (_c = fields === null || fields === void 0 ? void 0 : fields.openAIApiKey) !== null && _c !== void 0 ? _c : process.env.OPENAI_API_KEY,
|
|
51
|
+
});
|
|
52
|
+
this.client = new OpenAIApi(clientConfig);
|
|
53
|
+
}
|
|
54
|
+
async embedDocuments(texts) {
|
|
55
|
+
const subPrompts = (0, util_1.chunkArray)(texts, this.batchSize);
|
|
56
|
+
const embeddings = [];
|
|
57
|
+
for (let i = 0; i < subPrompts.length; i += 1) {
|
|
58
|
+
const input = subPrompts[i];
|
|
59
|
+
const { data } = await this.embeddingWithRetry({
|
|
60
|
+
model: this.modelName,
|
|
61
|
+
input,
|
|
62
|
+
});
|
|
63
|
+
for (let j = 0; j < input.length; j += 1) {
|
|
64
|
+
embeddings.push(data.data[j].embedding);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return embeddings;
|
|
68
|
+
}
|
|
69
|
+
async embedQuery(text) {
|
|
70
|
+
const { data } = await this.embeddingWithRetry({
|
|
71
|
+
model: this.modelName,
|
|
72
|
+
input: text,
|
|
73
|
+
});
|
|
74
|
+
return data.data[0].embedding;
|
|
75
|
+
}
|
|
76
|
+
embeddingWithRetry(request) {
|
|
77
|
+
const makeCompletionRequest = () => this.client.createEmbedding(request);
|
|
78
|
+
return (0, exponential_backoff_1.backOff)(makeCompletionRequest, {
|
|
79
|
+
startingDelay: 4,
|
|
80
|
+
maxDelay: 10,
|
|
81
|
+
numOfAttempts: this.maxRetries,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
exports.OpenAIEmbeddings = OpenAIEmbeddings;
|
|
86
|
+
//# sourceMappingURL=openai.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../embeddings/openai.ts"],"names":[],"mappings":";;;AAKA,6DAA8C;AAC9C,kCAAqC;AACrC,iCAAoC;AAEpC,IAAI,aAAa,GAAiC,IAAI,CAAC;AACvD,IAAI,SAAS,GAA6B,IAAI,CAAC;AAE/C,IAAI;IACF,4EAA4E;IAC5E,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;CACpD;AAAC,WAAM;IACN,eAAe;CAChB;AAMD,MAAa,gBAAiB,SAAQ,iBAAU;IAS9C,YACE,MAKC;;QAED,KAAK,EAAE,CAAC;QAhBV;;;;mBAAY,wBAAwB;WAAC;QAErC;;;;mBAAY,EAAE;WAAC;QAEf;;;;mBAAa,CAAC;WAAC;QAEf;;;;;WAA2B;QAWzB,IAAI,aAAa,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,EAAE;YAChD,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;SACH;QAED,IAAI,CAAC,SAAS,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,mCAAI,IAAI,CAAC,SAAS,CAAC;QACrD,IAAI,CAAC,SAAS,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,mCAAI,IAAI,CAAC,SAAS,CAAC;QACrD,MAAM,YAAY,GAAG,IAAI,aAAa,CAAC;YACrC,MAAM,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,mCAAI,OAAO,CAAC,GAAG,CAAC,cAAc;SAC3D,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAAe;QAClC,MAAM,UAAU,GAAG,IAAA,iBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAErD,MAAM,UAAU,GAAG,EAAE,CAAC;QAEtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC;gBAC7C,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,KAAK;aACN,CAAC,CAAC;YACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;gBACxC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;aACzC;SACF;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC;YAC7C,KAAK,EAAE,IAAI,CAAC,SAAS;YACrB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChC,CAAC;IAEO,kBAAkB,CAAC,OAA+B;QACxD,MAAM,qBAAqB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACzE,OAAO,IAAA,6BAAO,EAAC,qBAAqB,EAAE;YACpC,aAAa,EAAE,CAAC;YAChB,QAAQ,EAAE,EAAE;YACZ,aAAa,EAAE,IAAI,CAAC,UAAU;SAC/B,CAAC,CAAC;IACL,CAAC;CACF;AAnED,4CAmEC"}
|
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const openai_1 = require("../openai");
|
|
5
|
+
(0, globals_1.test)("Test OpenAIEmbeddings.embedQuery", async () => {
|
|
6
|
+
const embeddings = new openai_1.OpenAIEmbeddings();
|
|
7
|
+
const res = await embeddings.embedQuery("Hello world");
|
|
8
|
+
(0, globals_1.expect)(typeof res[0]).toBe("number");
|
|
9
|
+
});
|
|
10
|
+
(0, globals_1.test)("Test OpenAIEmbeddings.embedDocuments", async () => {
|
|
11
|
+
const embeddings = new openai_1.OpenAIEmbeddings();
|
|
12
|
+
const res = await embeddings.embedDocuments(["Hello world", "Bye bye"]);
|
|
13
|
+
(0, globals_1.expect)(res).toHaveLength(2);
|
|
14
|
+
(0, globals_1.expect)(typeof res[0][0]).toBe("number");
|
|
15
|
+
(0, globals_1.expect)(typeof res[1][0]).toBe("number");
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=openai.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.test.js","sourceRoot":"","sources":["../../../embeddings/tests/openai.test.ts"],"names":[],"mappings":";;AAAA,2CAA6C;AAC7C,sCAA6C;AAE7C,IAAA,cAAI,EAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;IAClD,MAAM,UAAU,GAAG,IAAI,yBAAgB,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACvD,IAAA,gBAAM,EAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAA,cAAI,EAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;IACtD,MAAM,UAAU,GAAG,IAAI,yBAAgB,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;IACxE,IAAA,gBAAM,EAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC5B,IAAA,gBAAM,EAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAA,gBAAM,EAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC,CAAC,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.OpenAI = exports.LLMChain = exports.FewShotPromptTemplate = exports.BasePromptTemplate = exports.PromptTemplate = void 0;
|
|
4
|
-
var
|
|
5
|
-
Object.defineProperty(exports, "PromptTemplate", { enumerable: true, get: function () { return
|
|
6
|
-
Object.defineProperty(exports, "BasePromptTemplate", { enumerable: true, get: function () { return
|
|
7
|
-
Object.defineProperty(exports, "FewShotPromptTemplate", { enumerable: true, get: function () { return
|
|
4
|
+
var prompts_1 = require("./prompts");
|
|
5
|
+
Object.defineProperty(exports, "PromptTemplate", { enumerable: true, get: function () { return prompts_1.PromptTemplate; } });
|
|
6
|
+
Object.defineProperty(exports, "BasePromptTemplate", { enumerable: true, get: function () { return prompts_1.BasePromptTemplate; } });
|
|
7
|
+
Object.defineProperty(exports, "FewShotPromptTemplate", { enumerable: true, get: function () { return prompts_1.FewShotPromptTemplate; } });
|
|
8
8
|
var chains_1 = require("./chains");
|
|
9
9
|
Object.defineProperty(exports, "LLMChain", { enumerable: true, get: function () { return chains_1.LLMChain; } });
|
|
10
10
|
var llms_1 = require("./llms");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,qCAImB;AAHjB,yGAAA,cAAc,OAAA;AACd,6GAAA,kBAAkB,OAAA;AAClB,gHAAA,qBAAqB,OAAA;AAGvB,mCAAoC;AAA3B,kGAAA,QAAQ,OAAA;AACjB,+BAAgC;AAAvB,8FAAA,MAAM,OAAA"}
|