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
|
@@ -5,35 +5,20 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
9
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
10
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
11
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
12
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
13
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
14
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
15
|
-
});
|
|
16
|
-
};
|
|
17
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
18
|
-
var t = {};
|
|
19
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
20
|
-
t[p] = s[p];
|
|
21
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
22
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
23
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
24
|
-
t[p[i]] = s[p[i]];
|
|
25
|
-
}
|
|
26
|
-
return t;
|
|
27
|
-
};
|
|
28
8
|
var ZeroShotAgent_1;
|
|
29
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
10
|
exports.ZeroShotAgent = void 0;
|
|
31
11
|
const chains_1 = require("../../chains");
|
|
32
12
|
const index_1 = require("../index");
|
|
33
|
-
const
|
|
34
|
-
const
|
|
13
|
+
const prompts_1 = require("../../prompts");
|
|
14
|
+
const prompt_1 = require("./prompt");
|
|
35
15
|
const helpers_1 = require("../helpers");
|
|
36
16
|
const FINAL_ANSWER_ACTION = "Final Answer:";
|
|
17
|
+
/**
|
|
18
|
+
* Agent for the MRKL chain.
|
|
19
|
+
* @augments Agent
|
|
20
|
+
* @augments StaticAgent
|
|
21
|
+
*/
|
|
37
22
|
let ZeroShotAgent = ZeroShotAgent_1 = class ZeroShotAgent extends index_1.Agent {
|
|
38
23
|
constructor(input) {
|
|
39
24
|
super(input);
|
|
@@ -55,14 +40,23 @@ let ZeroShotAgent = ZeroShotAgent_1 = class ZeroShotAgent extends index_1.Agent
|
|
|
55
40
|
throw new Error(msg);
|
|
56
41
|
}
|
|
57
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Create prompt in the style of the zero shot agent.
|
|
45
|
+
*
|
|
46
|
+
* @param tools - List of tools the agent will have access to, used to format the prompt.
|
|
47
|
+
* @param args - Arguments to create the prompt with.
|
|
48
|
+
* @param args.suffix - String to put after the list of tools.
|
|
49
|
+
* @param args.prefix - String to put before the list of tools.
|
|
50
|
+
* @param args.inputVariables - List of input variables the final prompt will expect.
|
|
51
|
+
*/
|
|
58
52
|
static createPrompt(tools, args) {
|
|
59
|
-
const { prefix =
|
|
53
|
+
const { prefix = prompt_1.PREFIX, suffix = prompt_1.SUFFIX, inputVariables = ["input", "agent_scratchpad"], } = args !== null && args !== void 0 ? args : {};
|
|
60
54
|
const toolStrings = tools
|
|
61
55
|
.map((tool) => `${tool.name}: ${tool.description}`)
|
|
62
56
|
.join("\n");
|
|
63
|
-
const instructions = (0,
|
|
57
|
+
const instructions = (0, prompt_1.formatInstructions)(toolStrings);
|
|
64
58
|
const template = [prefix, toolStrings, instructions, suffix].join("\n\n");
|
|
65
|
-
return new
|
|
59
|
+
return new prompts_1.PromptTemplate({
|
|
66
60
|
template,
|
|
67
61
|
inputVariables,
|
|
68
62
|
});
|
|
@@ -91,15 +85,13 @@ let ZeroShotAgent = ZeroShotAgent_1 = class ZeroShotAgent extends index_1.Agent
|
|
|
91
85
|
input: match[2].trim().replace(/^"+|"+$/g, ""),
|
|
92
86
|
};
|
|
93
87
|
}
|
|
94
|
-
static deserialize(data) {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
}), (args) => new ZeroShotAgent_1(args));
|
|
102
|
-
});
|
|
88
|
+
static async deserialize(data) {
|
|
89
|
+
const { llm, tools, ...rest } = data;
|
|
90
|
+
return (0, helpers_1.deserializeHelper)(llm, tools, rest, (llm, tools, args) => ZeroShotAgent_1.fromLLMAndTools(llm, tools, {
|
|
91
|
+
prefix: args.prefix,
|
|
92
|
+
suffix: args.suffix,
|
|
93
|
+
inputVariables: args.input_variables,
|
|
94
|
+
}), (args) => new ZeroShotAgent_1(args));
|
|
103
95
|
}
|
|
104
96
|
};
|
|
105
97
|
ZeroShotAgent = ZeroShotAgent_1 = __decorate([
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../agents/mrkl/index.ts"],"names":[],"mappings":";;;;;;;;;;AACA,yCAAwC;AACxC,oCAOkB;AAClB,2CAA+C;AAC/C,qCAA8D;AAC9D,wCAA+C;AAE/C,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAyB5C;;;;GAIG;AAEI,IAAM,aAAa,qBAAnB,MAAM,aAAc,SAAQ,aAAK;IACtC,YAAY,KAAyB;QACnC,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAED,UAAU;QACR,OAAO,6BAAsC,CAAC;IAChD,CAAC;IAED,iBAAiB;QACf,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,SAAS;QACP,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,KAAa;QAChC,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,WAAW,EAAE;YACf,MAAM,GAAG,GACP,cAAc,WAAW,CAAC,IAAI,yBAAyB;gBACvD,kDAAkD,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;SACtB;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,YAAY,CAAC,KAAa,EAAE,IAAuB;QACxD,MAAM,EACJ,MAAM,GAAG,eAAM,EACf,MAAM,GAAG,eAAM,EACf,cAAc,GAAG,CAAC,OAAO,EAAE,kBAAkB,CAAC,GAC/C,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;QACf,MAAM,WAAW,GAAG,KAAK;aACtB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;aAClD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,YAAY,GAAG,IAAA,2BAAkB,EAAC,WAAW,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE1E,OAAO,IAAI,wBAAc,CAAC;YACxB,QAAQ;YACR,cAAc;SACf,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,GAAY,EAAE,KAAa,EAAE,IAAuB;QACzE,eAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,eAAa,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,iBAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5C,OAAO,IAAI,eAAa,CAAC;YACvB,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;IAED,mBAAmB,CAAC,IAAY;QAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7C,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;SACxC;QAED,MAAM,KAAK,GAAG,mCAAmC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;SACxD;QAED,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;YACrB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SAC/C,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,WAAW,CACtB,IAAiE;QAEjE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACrC,OAAO,IAAA,2BAAiB,EACtB,GAAG,EACH,KAAK,EACL,IAAI,EACJ,CAAC,GAAY,EAAE,KAAa,EAAE,IAA+B,EAAE,EAAE,CAC/D,eAAa,CAAC,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE;YACxC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,cAAc,EAAE,IAAI,CAAC,eAAe;SACrC,CAAC,EACJ,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,eAAa,CAAC,IAAI,CAAC,CAClC,CAAC;IACJ,CAAC;CACF,CAAA;AAnGY,aAAa;IADzB,CAAC,wBAA6B,CAAC;GACnB,aAAa,CAmGzB;AAnGY,sCAAa"}
|
|
File without changes
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SUFFIX = exports.formatInstructions = exports.PREFIX = void 0;
|
|
4
|
-
/* eslint-disable max-len */
|
|
5
4
|
exports.PREFIX = `Answer the following questions as best you can. You have access to the following tools:`;
|
|
6
5
|
const formatInstructions = (toolNames) => `Use the following format:
|
|
7
6
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../agents/mrkl/prompt.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG,yFAAyF,CAAC;AACzG,MAAM,kBAAkB,GAAG,CAChC,SAAiB,EACjB,EAAE,CAAC;;;;gDAI2C,SAAS;;;;;8DAKK,CAAC;AAXlD,QAAA,kBAAkB,sBAWgC;AAClD,QAAA,MAAM,GAAG;;;2BAGK,CAAC"}
|
|
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 load_1 = require("../load");
|
|
6
|
+
const index_1 = require("../index");
|
|
7
|
+
const serpapi_1 = require("../tools/serpapi");
|
|
8
|
+
const calculator_1 = require("../tools/calculator");
|
|
9
|
+
const initialize_1 = require("../initialize");
|
|
10
|
+
(0, globals_1.test)("Run agent from hub", async () => {
|
|
11
|
+
const model = new openai_1.OpenAI({ temperature: 0 });
|
|
12
|
+
const tools = [new serpapi_1.SerpAPI(), new calculator_1.Calculator()];
|
|
13
|
+
const agent = await (0, load_1.loadAgent)("lc://agents/zero-shot-react-description/agent.json", { llm: model, tools });
|
|
14
|
+
const executor = index_1.AgentExecutor.fromAgentAndTools({
|
|
15
|
+
agent,
|
|
16
|
+
tools,
|
|
17
|
+
returnIntermediateSteps: true,
|
|
18
|
+
});
|
|
19
|
+
const res = await executor.call({
|
|
20
|
+
input: "Who is Olivia Wilde's boyfriend? What is his current age raised to the 0.23 power?",
|
|
21
|
+
});
|
|
22
|
+
console.log(res);
|
|
23
|
+
}, 30000);
|
|
24
|
+
(0, globals_1.test)("Run agent locally", async () => {
|
|
25
|
+
const model = new openai_1.OpenAI({ temperature: 0 });
|
|
26
|
+
const tools = [new serpapi_1.SerpAPI(), new calculator_1.Calculator()];
|
|
27
|
+
const executor = await (0, initialize_1.initializeAgentExecutor)(tools, model, "zero-shot-react-description");
|
|
28
|
+
console.log("Loaded agent.");
|
|
29
|
+
const input = "Who is Olivia Wilde's boyfriend?" +
|
|
30
|
+
" What is his current age raised to the 0.23 power?";
|
|
31
|
+
console.log(`Executing with input "${input}"...`);
|
|
32
|
+
const result = await executor.call({ input });
|
|
33
|
+
console.log(`Got output ${result.output}`);
|
|
34
|
+
}, 30000);
|
|
35
|
+
//# sourceMappingURL=agent.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.test.js","sourceRoot":"","sources":["../../../agents/tests/agent.test.ts"],"names":[],"mappings":";;AAAA,2CAAqC;AACrC,8CAA2C;AAC3C,kCAAoC;AACpC,oCAA+C;AAC/C,8CAA2C;AAC3C,oDAAiD;AACjD,8CAAwD;AAExD,IAAA,cAAI,EAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE;IACpC,MAAM,KAAK,GAAG,IAAI,eAAM,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAW,CAAC,IAAI,iBAAO,EAAE,EAAE,IAAI,uBAAU,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,MAAM,IAAA,gBAAS,EAC3B,oDAAoD,EACpD,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CACtB,CAAC;IACF,MAAM,QAAQ,GAAG,qBAAa,CAAC,iBAAiB,CAAC;QAC/C,KAAK;QACL,KAAK;QACL,uBAAuB,EAAE,IAAI;KAC9B,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC;QAC9B,KAAK,EACH,oFAAoF;KACvF,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC,EAAE,KAAK,CAAC,CAAC;AAEV,IAAA,cAAI,EAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;IACnC,MAAM,KAAK,GAAG,IAAI,eAAM,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,CAAC,IAAI,iBAAO,EAAE,EAAE,IAAI,uBAAU,EAAE,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,MAAM,IAAA,oCAAuB,EAC5C,KAAK,EACL,KAAK,EACL,6BAA6B,CAC9B,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAE7B,MAAM,KAAK,GACT,kCAAkC;QAClC,oDAAoD,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,MAAM,CAAC,CAAC;IAElD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAE9C,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AAC7C,CAAC,EAAE,KAAK,CAAC,CAAC"}
|
|
File without changes
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const calculator_1 = require("../tools/calculator");
|
|
5
|
+
(0, globals_1.test)("Calculator tool, sum", async () => {
|
|
6
|
+
const calculator = new calculator_1.Calculator();
|
|
7
|
+
const result = await calculator.call("1 + 1");
|
|
8
|
+
(0, globals_1.expect)(result).toBe("2");
|
|
9
|
+
});
|
|
10
|
+
(0, globals_1.test)("Calculator tool, product", async () => {
|
|
11
|
+
const calculator = new calculator_1.Calculator();
|
|
12
|
+
const result = await calculator.call("2 * 3");
|
|
13
|
+
(0, globals_1.expect)(result).toBe("6");
|
|
14
|
+
});
|
|
15
|
+
(0, globals_1.test)("Calculator tool, division", async () => {
|
|
16
|
+
const calculator = new calculator_1.Calculator();
|
|
17
|
+
const result = await calculator.call("7 /2");
|
|
18
|
+
(0, globals_1.expect)(result).toBe("3.5");
|
|
19
|
+
});
|
|
20
|
+
(0, globals_1.test)("Calculator tool, exponentiation", async () => {
|
|
21
|
+
const calculator = new calculator_1.Calculator();
|
|
22
|
+
const result = await calculator.call("2 ^ 8");
|
|
23
|
+
(0, globals_1.expect)(result).toBe("256");
|
|
24
|
+
});
|
|
25
|
+
(0, globals_1.test)("Calculator tool, complicated expression", async () => {
|
|
26
|
+
const calculator = new calculator_1.Calculator();
|
|
27
|
+
const result = await calculator.call("((2 + 3) * 4) / 2");
|
|
28
|
+
(0, globals_1.expect)(result).toBe("10");
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=calculator.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculator.test.js","sourceRoot":"","sources":["../../../agents/tests/calculator.test.ts"],"names":[],"mappings":";;AAAA,2CAA6C;AAC7C,oDAAiD;AAEjD,IAAA,cAAI,EAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;IACtC,MAAM,UAAU,GAAG,IAAI,uBAAU,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,IAAA,cAAI,EAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,UAAU,GAAG,IAAI,uBAAU,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,IAAA,cAAI,EAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;IAC3C,MAAM,UAAU,GAAG,IAAI,uBAAU,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEH,IAAA,cAAI,EAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;IACjD,MAAM,UAAU,GAAG,IAAI,uBAAU,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEH,IAAA,cAAI,EAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;IACzD,MAAM,UAAU,GAAG,IAAI,uBAAU,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC1D,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Tool = void 0;
|
|
4
|
+
class Tool {
|
|
5
|
+
constructor() {
|
|
6
|
+
Object.defineProperty(this, "returnDirect", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
configurable: true,
|
|
9
|
+
writable: true,
|
|
10
|
+
value: false
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.Tool = Tool;
|
|
15
|
+
//# sourceMappingURL=base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../agents/tools/base.ts"],"names":[],"mappings":";;;AAAA,MAAsB,IAAI;IAA1B;QAOE;;;;mBAAe,KAAK;WAAC;IACvB,CAAC;CAAA;AARD,oBAQC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Calculator = void 0;
|
|
4
|
+
const expr_eval_1 = require("expr-eval");
|
|
5
|
+
const base_1 = require("./base");
|
|
6
|
+
class Calculator extends base_1.Tool {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
Object.defineProperty(this, "name", {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
configurable: true,
|
|
12
|
+
writable: true,
|
|
13
|
+
value: "calculator"
|
|
14
|
+
});
|
|
15
|
+
Object.defineProperty(this, "description", {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
configurable: true,
|
|
18
|
+
writable: true,
|
|
19
|
+
value: `Useful for getting the result of a math expression.
|
|
20
|
+
The input to this tool should be a valid mathmatical expression that can be parsed and evaluated by javascript's expr-eval`
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
async call(input) {
|
|
24
|
+
try {
|
|
25
|
+
return expr_eval_1.Parser.evaluate(input).toString();
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
return "I don't know how to do that.";
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.Calculator = Calculator;
|
|
33
|
+
//# sourceMappingURL=calculator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../../agents/tools/calculator.ts"],"names":[],"mappings":";;;AAAA,yCAAmC;AAEnC,iCAA8B;AAE9B,MAAa,UAAW,SAAQ,WAAI;IAApC;;QACE;;;;mBAAO,YAAY;WAAC;QAUpB;;;;mBAAc;6HAC6G;WAAC;IAC9H,CAAC;IAVC,KAAK,CAAC,IAAI,CAAC,KAAa;QACtB,IAAI;YACF,OAAO,kBAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;SAC1C;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,8BAA8B,CAAC;SACvC;IACH,CAAC;CAIF;AAbD,gCAaC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Tool = exports.Calculator = exports.SerpAPI = void 0;
|
|
4
|
+
var serpapi_1 = require("./serpapi");
|
|
5
|
+
Object.defineProperty(exports, "SerpAPI", { enumerable: true, get: function () { return serpapi_1.SerpAPI; } });
|
|
6
|
+
var calculator_1 = require("./calculator");
|
|
7
|
+
Object.defineProperty(exports, "Calculator", { enumerable: true, get: function () { return calculator_1.Calculator; } });
|
|
8
|
+
var base_1 = require("./base");
|
|
9
|
+
Object.defineProperty(exports, "Tool", { enumerable: true, get: function () { return base_1.Tool; } });
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../agents/tools/index.ts"],"names":[],"mappings":";;;AAAA,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,+BAA8B;AAArB,4FAAA,IAAI,OAAA"}
|
|
File without changes
|
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-math.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"llm-math.js","sourceRoot":"","sources":["../../../agents/tools/llm-math.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { GoogleParameters } from "serpapi";
|
|
2
|
+
import { Tool } from "./base";
|
|
3
|
+
/**
|
|
4
|
+
* Wrapper around SerpAPI.
|
|
5
|
+
*
|
|
6
|
+
* To use, you should have the `serpapi` package installed and the SERPAPI_API_KEY environment variable set.
|
|
7
|
+
*/
|
|
8
|
+
export declare class SerpAPI extends Tool {
|
|
9
|
+
protected key: string;
|
|
10
|
+
protected params: Partial<GoogleParameters>;
|
|
11
|
+
constructor(apiKey?: string | undefined, params?: Partial<GoogleParameters>);
|
|
12
|
+
name: string;
|
|
13
|
+
/**
|
|
14
|
+
* Run query through SerpAPI and parse result
|
|
15
|
+
*/
|
|
16
|
+
call(input: string): Promise<any>;
|
|
17
|
+
description: string;
|
|
18
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SerpAPI = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
let getJson = null;
|
|
6
|
+
try {
|
|
7
|
+
// eslint-disable-next-line global-require,import/no-extraneous-dependencies
|
|
8
|
+
({ getJson } = require("serpapi"));
|
|
9
|
+
}
|
|
10
|
+
catch (_a) {
|
|
11
|
+
// ignore error
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Wrapper around SerpAPI.
|
|
15
|
+
*
|
|
16
|
+
* To use, you should have the `serpapi` package installed and the SERPAPI_API_KEY environment variable set.
|
|
17
|
+
*/
|
|
18
|
+
class SerpAPI extends base_1.Tool {
|
|
19
|
+
constructor(apiKey = process.env.SERPAPI_API_KEY, params = {}) {
|
|
20
|
+
super();
|
|
21
|
+
Object.defineProperty(this, "key", {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
configurable: true,
|
|
24
|
+
writable: true,
|
|
25
|
+
value: void 0
|
|
26
|
+
});
|
|
27
|
+
Object.defineProperty(this, "params", {
|
|
28
|
+
enumerable: true,
|
|
29
|
+
configurable: true,
|
|
30
|
+
writable: true,
|
|
31
|
+
value: void 0
|
|
32
|
+
});
|
|
33
|
+
Object.defineProperty(this, "name", {
|
|
34
|
+
enumerable: true,
|
|
35
|
+
configurable: true,
|
|
36
|
+
writable: true,
|
|
37
|
+
value: "search"
|
|
38
|
+
});
|
|
39
|
+
Object.defineProperty(this, "description", {
|
|
40
|
+
enumerable: true,
|
|
41
|
+
configurable: true,
|
|
42
|
+
writable: true,
|
|
43
|
+
value: "a search engine. useful for when you need to answer questions about current events. input should be a search query."
|
|
44
|
+
});
|
|
45
|
+
// Throw error at construction time.
|
|
46
|
+
if (getJson === null) {
|
|
47
|
+
throw new Error("Please install serpapi as a dependency with, e.g. `npm i serpapi`");
|
|
48
|
+
}
|
|
49
|
+
if (!apiKey) {
|
|
50
|
+
throw new Error("SerpAPI API key not set. You can set it as SERPAPI_API_KEY in your .env file, or pass it to SerpAPI.");
|
|
51
|
+
}
|
|
52
|
+
this.key = apiKey;
|
|
53
|
+
this.params = params;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Run query through SerpAPI and parse result
|
|
57
|
+
*/
|
|
58
|
+
async call(input) {
|
|
59
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
60
|
+
if (getJson === null) {
|
|
61
|
+
throw new Error("Please install serpapi as a dependency with, e.g. `npm i serpapi`");
|
|
62
|
+
}
|
|
63
|
+
const res = await getJson("google", {
|
|
64
|
+
...this.params,
|
|
65
|
+
api_key: this.key,
|
|
66
|
+
q: input,
|
|
67
|
+
});
|
|
68
|
+
if (res.error) {
|
|
69
|
+
throw new Error(`Got error from serpAPI: ${res.error}`);
|
|
70
|
+
}
|
|
71
|
+
if ((_a = res.answer_box) === null || _a === void 0 ? void 0 : _a.answer) {
|
|
72
|
+
return res.answer_box.answer;
|
|
73
|
+
}
|
|
74
|
+
if ((_b = res.answer_box) === null || _b === void 0 ? void 0 : _b.snippet) {
|
|
75
|
+
return res.answer_box.snippet;
|
|
76
|
+
}
|
|
77
|
+
if ((_c = res.answer_box) === null || _c === void 0 ? void 0 : _c.snippet_highlighted_words) {
|
|
78
|
+
return res.answer_box.snippet_highlighted_words[0];
|
|
79
|
+
}
|
|
80
|
+
if ((_d = res.sports_results) === null || _d === void 0 ? void 0 : _d.game_spotlight) {
|
|
81
|
+
return res.sports_results.game_spotlight;
|
|
82
|
+
}
|
|
83
|
+
if ((_e = res.knowledge_graph) === null || _e === void 0 ? void 0 : _e.description) {
|
|
84
|
+
return res.knowledge_graph.description;
|
|
85
|
+
}
|
|
86
|
+
if ((_g = (_f = res.organic_results) === null || _f === void 0 ? void 0 : _f[0]) === null || _g === void 0 ? void 0 : _g.snippet) {
|
|
87
|
+
return res.organic_results[0].snippet;
|
|
88
|
+
}
|
|
89
|
+
return "No good search result found";
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
exports.SerpAPI = SerpAPI;
|
|
93
|
+
//# sourceMappingURL=serpapi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serpapi.js","sourceRoot":"","sources":["../../../agents/tools/serpapi.ts"],"names":[],"mappings":";;;AAEA,iCAA8B;AAE9B,IAAI,OAAO,GAA2B,IAAI,CAAC;AAE3C,IAAI;IACF,4EAA4E;IAC5E,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;CACpC;AAAC,WAAM;IACN,eAAe;CAChB;AAED;;;;GAIG;AACH,MAAa,OAAQ,SAAQ,WAAI;IAK/B,YACE,SAA6B,OAAO,CAAC,GAAG,CAAC,eAAe,EACxD,SAAoC,EAAE;QAEtC,KAAK,EAAE,CAAC;QARV;;;;;WAAsB;QAEtB;;;;;WAA4C;QAyB5C;;;;mBAAO,QAAQ;WAAC;QAgDhB;;;;mBACE,qHAAqH;WAAC;QAlEtH,oCAAoC;QACpC,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;SACH;QAED,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CACb,sGAAsG,CACvG,CAAC;SACH;QAED,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAID;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,KAAa;;QACtB,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;SACH;QACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;YAClC,GAAG,IAAI,CAAC,MAAM;YACd,OAAO,EAAE,IAAI,CAAC,GAAG;YACjB,CAAC,EAAE,KAAK;SACT,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,KAAK,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;SACzD;QAED,IAAI,MAAA,GAAG,CAAC,UAAU,0CAAE,MAAM,EAAE;YAC1B,OAAO,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;SAC9B;QAED,IAAI,MAAA,GAAG,CAAC,UAAU,0CAAE,OAAO,EAAE;YAC3B,OAAO,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;SAC/B;QAED,IAAI,MAAA,GAAG,CAAC,UAAU,0CAAE,yBAAyB,EAAE;YAC7C,OAAO,GAAG,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;SACpD;QAED,IAAI,MAAA,GAAG,CAAC,cAAc,0CAAE,cAAc,EAAE;YACtC,OAAO,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC;SAC1C;QAED,IAAI,MAAA,GAAG,CAAC,eAAe,0CAAE,WAAW,EAAE;YACpC,OAAO,GAAG,CAAC,eAAe,CAAC,WAAW,CAAC;SACxC;QAED,IAAI,MAAA,MAAA,GAAG,CAAC,eAAe,0CAAG,CAAC,CAAC,0CAAE,OAAO,EAAE;YACrC,OAAO,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;SACvC;QAED,OAAO,6BAA6B,CAAC;IACvC,CAAC;CAIF;AA9ED,0BA8EC"}
|
|
File without changes
|
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../agents/types.ts"],"names":[],"mappings":""}
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../cache.ts"],"names":[],"mappings":";;;AAEA,MAAM,MAAM,GAAG,CAAC,MAAc,EAAE,MAAc,EAAU,EAAE,CACxD,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAExB,MAAsB,SAAS;CAI9B;AAJD,8BAIC;AAED,MAAa,aAAgC,SAAQ,SAAY;IAG/D;QACE,KAAK,EAAE,CAAC;QAHV;;;;;WAAiC;QAI/B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,MAAc,EAAE,MAAc;QACnC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,MAAc,EAAE,MAAc,EAAE,KAAQ;QAC7C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC;IAC7C,CAAC;CACF;AAfD,sCAeC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { LLMChain, StuffDocumentsChain, VectorDBQAChain, ChatVectorDBQAChain } from "./index";
|
|
2
|
+
import { BaseMemory } from "../memory";
|
|
3
|
+
export type ChainValues = Record<string, any>;
|
|
4
|
+
export type LoadValues = Record<string, any>;
|
|
5
|
+
declare const chainClasses: (typeof LLMChain | typeof StuffDocumentsChain | typeof VectorDBQAChain | typeof ChatVectorDBQAChain)[];
|
|
6
|
+
export type SerializedBaseChain = ReturnType<InstanceType<(typeof chainClasses)[number]>["serialize"]>;
|
|
7
|
+
export interface ChainInputs {
|
|
8
|
+
memory?: BaseMemory;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Base interface that all chains must implement.
|
|
12
|
+
*/
|
|
13
|
+
export declare abstract class BaseChain implements ChainInputs {
|
|
14
|
+
memory?: BaseMemory;
|
|
15
|
+
/**
|
|
16
|
+
* Run the core logic of this chain and return the output
|
|
17
|
+
*/
|
|
18
|
+
abstract _call(values: ChainValues): Promise<ChainValues>;
|
|
19
|
+
/**
|
|
20
|
+
* Return the string type key uniquely identifying this class of chain.
|
|
21
|
+
*/
|
|
22
|
+
abstract _chainType(): string;
|
|
23
|
+
/**
|
|
24
|
+
* Return a json-like object representing this chain.
|
|
25
|
+
*/
|
|
26
|
+
abstract serialize(): SerializedBaseChain;
|
|
27
|
+
/**
|
|
28
|
+
* Run the core logic of this chain and add to output if desired.
|
|
29
|
+
*
|
|
30
|
+
* Wraps {@link _call} and handles memory.
|
|
31
|
+
*/
|
|
32
|
+
call(values: ChainValues): Promise<ChainValues>;
|
|
33
|
+
/**
|
|
34
|
+
* Call the chain on all inputs in the list
|
|
35
|
+
*/
|
|
36
|
+
apply(inputs: ChainValues[]): ChainValues[];
|
|
37
|
+
/**
|
|
38
|
+
* Load a chain from a json-like object describing it.
|
|
39
|
+
*/
|
|
40
|
+
static deserialize(data: SerializedBaseChain, values?: LoadValues): Promise<BaseChain>;
|
|
41
|
+
}
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseChain = void 0;
|
|
4
|
+
const deepcopy = require("deepcopy");
|
|
5
|
+
const index_1 = require("./index");
|
|
6
|
+
const chainClasses = [
|
|
7
|
+
index_1.LLMChain,
|
|
8
|
+
index_1.StuffDocumentsChain,
|
|
9
|
+
index_1.VectorDBQAChain,
|
|
10
|
+
index_1.ChatVectorDBQAChain,
|
|
11
|
+
];
|
|
12
|
+
/**
|
|
13
|
+
* Base interface that all chains must implement.
|
|
14
|
+
*/
|
|
15
|
+
class BaseChain {
|
|
16
|
+
constructor() {
|
|
17
|
+
Object.defineProperty(this, "memory", {
|
|
18
|
+
enumerable: true,
|
|
19
|
+
configurable: true,
|
|
20
|
+
writable: true,
|
|
21
|
+
value: void 0
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Run the core logic of this chain and add to output if desired.
|
|
26
|
+
*
|
|
27
|
+
* Wraps {@link _call} and handles memory.
|
|
28
|
+
*/
|
|
29
|
+
async call(values) {
|
|
30
|
+
const fullValues = deepcopy(values);
|
|
31
|
+
if (!(this.memory == null)) {
|
|
32
|
+
const newValues = await this.memory.loadMemoryVariables(values);
|
|
33
|
+
for (const [key, value] of Object.entries(newValues)) {
|
|
34
|
+
fullValues[key] = value;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// TODO(sean) add callback support
|
|
38
|
+
const outputValues = this._call(fullValues);
|
|
39
|
+
if (!(this.memory == null)) {
|
|
40
|
+
this.memory.saveContext(values, outputValues);
|
|
41
|
+
}
|
|
42
|
+
return outputValues;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Call the chain on all inputs in the list
|
|
46
|
+
*/
|
|
47
|
+
apply(inputs) {
|
|
48
|
+
return inputs.map(this.call);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Load a chain from a json-like object describing it.
|
|
52
|
+
*/
|
|
53
|
+
static deserialize(data, values = {}) {
|
|
54
|
+
switch (data._type) {
|
|
55
|
+
case "llm_chain":
|
|
56
|
+
return index_1.LLMChain.deserialize(data);
|
|
57
|
+
case "stuff_documents_chain":
|
|
58
|
+
return index_1.StuffDocumentsChain.deserialize(data);
|
|
59
|
+
case "vector_db_qa":
|
|
60
|
+
return index_1.VectorDBQAChain.deserialize(data, values);
|
|
61
|
+
default:
|
|
62
|
+
throw new Error(`Invalid prompt type in config: ${data._type}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
exports.BaseChain = BaseChain;
|
|
67
|
+
//# sourceMappingURL=base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../chains/base.ts"],"names":[],"mappings":";;;AAAA,qCAAsC;AACtC,mCAKiB;AAQjB,MAAM,YAAY,GAAG;IACnB,gBAAQ;IACR,2BAAmB;IACnB,uBAAe;IACf,2BAAmB;CACpB,CAAC;AAUF;;GAEG;AACH,MAAsB,SAAS;IAA/B;QACE;;;;;WAAoB;IAmEtB,CAAC;IAlDC;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,MAAmB;QAC5B,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE;YAC1B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAChE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBACpD,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aACzB;SACF;QACD,kCAAkC;QAClC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE;YAC1B,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;SAC/C;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAqB;QACzB,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,WAAW,CAChB,IAAyB,EACzB,SAAqB,EAAE;QAEvB,QAAQ,IAAI,CAAC,KAAK,EAAE;YAClB,KAAK,WAAW;gBACd,OAAO,gBAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACpC,KAAK,uBAAuB;gBAC1B,OAAO,2BAAmB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC/C,KAAK,cAAc;gBACjB,OAAO,uBAAe,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACnD;gBACE,MAAM,IAAI,KAAK,CACb,kCACG,IAA4B,CAAC,KAChC,EAAE,CACH,CAAC;SACL;IACH,CAAC;CACF;AApED,8BAoEC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { BaseChain, ChainValues, SerializedStuffDocumentsChain, StuffDocumentsChain, SerializedLLMChain, LLMChain } from "./index";
|
|
2
|
+
import { VectorStore } from "../vectorstores/base";
|
|
3
|
+
import { BaseLLM } from "../llms";
|
|
4
|
+
export type LoadValues = Record<string, any>;
|
|
5
|
+
export interface ChatVectorDBQAChainInput {
|
|
6
|
+
vectorstore: VectorStore;
|
|
7
|
+
k: number;
|
|
8
|
+
combineDocumentsChain: StuffDocumentsChain;
|
|
9
|
+
questionGeneratorChain: LLMChain;
|
|
10
|
+
outputKey: string;
|
|
11
|
+
inputKey: string;
|
|
12
|
+
}
|
|
13
|
+
export type SerializedChatVectorDBQAChain = {
|
|
14
|
+
_type: "chat-vector-db";
|
|
15
|
+
k: number;
|
|
16
|
+
combine_documents_chain: SerializedStuffDocumentsChain;
|
|
17
|
+
combine_documents_chain_path?: string;
|
|
18
|
+
question_generator: SerializedLLMChain;
|
|
19
|
+
};
|
|
20
|
+
export declare class ChatVectorDBQAChain extends BaseChain implements ChatVectorDBQAChainInput {
|
|
21
|
+
k: number;
|
|
22
|
+
inputKey: string;
|
|
23
|
+
chatHistoryKey: string;
|
|
24
|
+
outputKey: string;
|
|
25
|
+
vectorstore: VectorStore;
|
|
26
|
+
combineDocumentsChain: StuffDocumentsChain;
|
|
27
|
+
questionGeneratorChain: LLMChain;
|
|
28
|
+
constructor(fields: {
|
|
29
|
+
vectorstore: VectorStore;
|
|
30
|
+
combineDocumentsChain: StuffDocumentsChain;
|
|
31
|
+
questionGeneratorChain: LLMChain;
|
|
32
|
+
inputKey?: string;
|
|
33
|
+
outputKey?: string;
|
|
34
|
+
k?: number;
|
|
35
|
+
});
|
|
36
|
+
_call(values: ChainValues): Promise<ChainValues>;
|
|
37
|
+
_chainType(): "chat-vector-db";
|
|
38
|
+
static deserialize(data: SerializedChatVectorDBQAChain, values: LoadValues): Promise<ChatVectorDBQAChain>;
|
|
39
|
+
serialize(): SerializedChatVectorDBQAChain;
|
|
40
|
+
static fromLLM(llm: BaseLLM, vectorstore: VectorStore): ChatVectorDBQAChain;
|
|
41
|
+
}
|