langchain 0.0.23 → 0.0.25

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.
Files changed (83) hide show
  1. package/dist/chains/base.js +1 -1
  2. package/dist/chains/base.js.map +1 -1
  3. package/dist/chains/chat_vector_db_chain.js +2 -2
  4. package/dist/chains/chat_vector_db_chain.js.map +1 -1
  5. package/dist/chains/conversation.d.ts +2 -2
  6. package/dist/chains/index.d.ts +1 -1
  7. package/dist/chains/index.js +1 -1
  8. package/dist/chains/index.js.map +1 -1
  9. package/dist/chains/llm_chain.d.ts +2 -2
  10. package/dist/chains/prompt_selector.d.ts +21 -0
  11. package/dist/chains/prompt_selector.js +38 -0
  12. package/dist/chains/prompt_selector.js.map +1 -0
  13. package/dist/chains/question_answering/load.d.ts +9 -0
  14. package/dist/chains/question_answering/load.js +22 -2
  15. package/dist/chains/question_answering/load.js.map +1 -1
  16. package/dist/chains/question_answering/map_reduce_prompts.d.ts +3 -0
  17. package/dist/chains/question_answering/map_reduce_prompts.js +22 -1
  18. package/dist/chains/question_answering/map_reduce_prompts.js.map +1 -1
  19. package/dist/chains/question_answering/stuff_prompts.d.ts +2 -0
  20. package/dist/chains/question_answering/stuff_prompts.js +12 -1
  21. package/dist/chains/question_answering/stuff_prompts.js.map +1 -1
  22. package/dist/chains/question_answering/tests/load.int.test.js +5 -5
  23. package/dist/chains/question_answering/tests/load.int.test.js.map +1 -1
  24. package/dist/chains/summarization/tests/load.int.test.js +1 -1
  25. package/dist/chains/summarization/tests/load.int.test.js.map +1 -1
  26. package/dist/chains/tests/combine_docs_chain.int.test.js +2 -2
  27. package/dist/chains/tests/combine_docs_chain.int.test.js.map +1 -1
  28. package/dist/chains/tests/combine_docs_chain.test.js +2 -2
  29. package/dist/chains/tests/combine_docs_chain.test.js.map +1 -1
  30. package/dist/chains/vector_db_qa.js +3 -4
  31. package/dist/chains/vector_db_qa.js.map +1 -1
  32. package/dist/chat_models/index.d.ts +1 -0
  33. package/dist/chat_models/index.js +1 -0
  34. package/dist/chat_models/index.js.map +1 -1
  35. package/dist/document_loaders/index.d.ts +1 -0
  36. package/dist/document_loaders/index.js +1 -0
  37. package/dist/document_loaders/index.js.map +1 -1
  38. package/dist/document_loaders/puppeteer_web_base.d.ts +26 -0
  39. package/dist/document_loaders/puppeteer_web_base.js +60 -0
  40. package/dist/document_loaders/puppeteer_web_base.js.map +1 -0
  41. package/dist/document_loaders/tests/puppeteer_web.int.test.d.ts +1 -0
  42. package/dist/document_loaders/tests/puppeteer_web.int.test.js +29 -0
  43. package/dist/document_loaders/tests/puppeteer_web.int.test.js.map +1 -0
  44. package/dist/embeddings/index.d.ts +1 -0
  45. package/dist/embeddings/index.js +1 -0
  46. package/dist/embeddings/index.js.map +1 -1
  47. package/dist/memory/base.d.ts +4 -1
  48. package/dist/memory/base.js +31 -0
  49. package/dist/memory/base.js.map +1 -1
  50. package/dist/memory/buffer_memory.d.ts +4 -5
  51. package/dist/memory/buffer_memory.js +13 -24
  52. package/dist/memory/buffer_memory.js.map +1 -1
  53. package/dist/memory/buffer_window_memory.d.ts +4 -5
  54. package/dist/memory/buffer_window_memory.js +11 -24
  55. package/dist/memory/buffer_window_memory.js.map +1 -1
  56. package/dist/memory/chat_memory.d.ts +18 -0
  57. package/dist/memory/chat_memory.js +43 -0
  58. package/dist/memory/chat_memory.js.map +1 -0
  59. package/dist/memory/index.d.ts +1 -0
  60. package/dist/memory/index.js +1 -0
  61. package/dist/memory/index.js.map +1 -1
  62. package/dist/memory/tests/buffer_memory.test.js +15 -5
  63. package/dist/memory/tests/buffer_memory.test.js.map +1 -1
  64. package/dist/memory/tests/buffer_window_memory.test.js +24 -10
  65. package/dist/memory/tests/buffer_window_memory.test.js.map +1 -1
  66. package/dist/prompts/chat.d.ts +16 -4
  67. package/dist/prompts/chat.js +37 -10
  68. package/dist/prompts/chat.js.map +1 -1
  69. package/dist/prompts/index.d.ts +1 -1
  70. package/dist/prompts/index.js +1 -1
  71. package/dist/prompts/index.js.map +1 -1
  72. package/dist/prompts/tests/chat.test.js +7 -1
  73. package/dist/prompts/tests/chat.test.js.map +1 -1
  74. package/dist/vectorstores/index.d.ts +1 -0
  75. package/dist/vectorstores/index.js +1 -0
  76. package/dist/vectorstores/index.js.map +1 -1
  77. package/dist/vectorstores/supabase.d.ts +20 -0
  78. package/dist/vectorstores/supabase.js +87 -0
  79. package/dist/vectorstores/supabase.js.map +1 -0
  80. package/dist/vectorstores/tests/supabase.int.test.d.ts +1 -0
  81. package/dist/vectorstores/tests/supabase.int.test.js +24 -0
  82. package/dist/vectorstores/tests/supabase.int.test.js.map +1 -0
  83. package/package.json +12 -1
@@ -41,7 +41,7 @@ export class BaseChain {
41
41
  }
42
42
  }
43
43
  // TODO(sean) add callback support
44
- const outputValues = this._call(fullValues);
44
+ const outputValues = await this._call(fullValues);
45
45
  if (!(this.memory == null)) {
46
46
  await this.memory.saveContext(values, outputValues);
47
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/chains/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/chains/base.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { BaseChain, LLMChain, loadQAChain, } from "./index.js";
1
+ import { BaseChain, LLMChain, loadQAStuffChain, } from "./index.js";
2
2
  import { PromptTemplate } from "../prompts/index.js";
3
3
  import { resolveConfigFromFile } from "../util/index.js";
4
4
  const question_generator_template = `Given the following conversation and a follow up question, rephrase the follow up question to be a standalone question.
@@ -142,7 +142,7 @@ export class ChatVectorDBQAChain extends BaseChain {
142
142
  };
143
143
  }
144
144
  static fromLLM(llm, vectorstore) {
145
- const qaChain = loadQAChain(llm, { prompt: qa_prompt });
145
+ const qaChain = loadQAStuffChain(llm, { prompt: qa_prompt });
146
146
  const questionGeneratorChain = new LLMChain({
147
147
  prompt: question_generator_prompt,
148
148
  llm,
@@ -1 +1 @@
1
- {"version":3,"file":"chat_vector_db_chain.js","sourceRoot":"","sources":["../../src/chains/chat_vector_db_chain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat_vector_db_chain.js","sourceRoot":"","sources":["../../src/chains/chat_vector_db_chain.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAET,QAAQ,EACR,gBAAgB,GAGjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAKrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAIzD,MAAM,2BAA2B,GAAG;;;;;qBAKf,CAAC;AACtB,MAAM,yBAAyB,GAAG,cAAc,CAAC,YAAY,CAC3D,2BAA2B,CAC5B,CAAC;AAEF,MAAM,WAAW,GAAG;;;;;gBAKJ,CAAC;AACjB,MAAM,SAAS,GAAG,cAAc,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;AAmB3D,MAAM,OAAO,mBACX,SAAQ,SAAS;IASjB,IAAI,SAAS;QACX,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAC9C,CAAC;IAYD,YAAY,MAQX;QACC,KAAK,EAAE,CAAC;QA7BV;;;;mBAAI,CAAC;WAAC;QAEN;;;;mBAAW,UAAU;WAAC;QAEtB;;;;mBAAiB,cAAc;WAAC;QAMhC;;;;mBAAY,QAAQ;WAAC;QAErB;;;;;WAAyB;QAEzB;;;;;WAAiC;QAEjC;;;;;WAAiC;QAEjC;;;;mBAAwB,KAAK;WAAC;QAY5B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC1D,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,CAAC;QAC5D,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QACjD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QACpD,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,qBAAqB;YACxB,MAAM,CAAC,qBAAqB,IAAI,IAAI,CAAC,qBAAqB,CAAC;IAC/D,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,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,MAAM,CAAC,EAAE;YACpC,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC,QAAQ,aAAa,CAAC,CAAC;SACjE;QACD,MAAM,QAAQ,GAAW,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,WAAW,GAAW,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACxD,IAAI,WAAW,GAAG,QAAQ,CAAC;QAC3B,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC;gBACpD,QAAQ;gBACR,YAAY,EAAE,WAAW;aAC1B,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;gBACrB,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;aAC/B;iBAAM;gBACL,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;aACH;SACF;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG;YACb,QAAQ;YACR,eAAe,EAAE,IAAI;YACrB,YAAY,EAAE,WAAW;SAC1B,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7D,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,OAAO;gBACL,GAAG,MAAM;gBACT,eAAe,EAAE,IAAI;aACtB,CAAC;SACH;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,UAAU;QACR,OAAO,gBAAyB,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,WAAW,CACtB,IAAmC,EACnC,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,MAAM,qBAAqB,CAGjE,yBAAyB,EAAE,IAAI,CAAC,CAAC;QACnC,MAAM,gCAAgC,GAAG,MAAM,qBAAqB,CAGlE,oBAAoB,EAAE,IAAI,CAAC,CAAC;QAE9B,OAAO,IAAI,mBAAmB,CAAC;YAC7B,qBAAqB,EAAE,MAAM,SAAS,CAAC,WAAW,CAChD,+BAA+B,CAChC;YACD,sBAAsB,EAAE,MAAM,QAAQ,CAAC,WAAW,CAChD,gCAAgC,CACjC;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,kBAAkB,EAAE,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE;YAC3D,CAAC,EAAE,IAAI,CAAC,CAAC;SACV,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,GAAY,EAAE,WAAwB;QACnD,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7D,MAAM,sBAAsB,GAAG,IAAI,QAAQ,CAAC;YAC1C,MAAM,EAAE,yBAAyB;YACjC,GAAG;SACJ,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC;YACxB,WAAW;YACX,qBAAqB,EAAE,OAAO;YAC9B,sBAAsB;SACvB,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
@@ -1,10 +1,10 @@
1
1
  import { LLMChain } from "./llm_chain.js";
2
- import { BaseLLM } from "../llms/index.js";
2
+ import { BaseLanguageModel } from "../schema/index.js";
3
3
  import { BasePromptTemplate } from "../prompts/index.js";
4
4
  import { BaseMemory } from "../memory/index.js";
5
5
  export declare class ConversationChain extends LLMChain {
6
6
  constructor(fields: {
7
- llm: BaseLLM;
7
+ llm: BaseLanguageModel;
8
8
  prompt?: BasePromptTemplate;
9
9
  outputKey?: string;
10
10
  memory?: BaseMemory;
@@ -5,5 +5,5 @@ export { ChatVectorDBQAChain, SerializedChatVectorDBQAChain, } from "./chat_vect
5
5
  export { AnalyzeDocumentChain, SerializedAnalyzeDocumentChain, } from "./analyze_documents_chain.js";
6
6
  export { VectorDBQAChain, SerializedVectorDBQAChain } from "./vector_db_qa.js";
7
7
  export { loadChain } from "./load.js";
8
- export { loadQAChain } from "./question_answering/load.js";
8
+ export { loadQAChain, loadQAStuffChain, loadQAMapReduceChain, } from "./question_answering/load.js";
9
9
  export { loadSummarizationChain } from "./summarization/load.js";
@@ -5,6 +5,6 @@ export { ChatVectorDBQAChain, } from "./chat_vector_db_chain.js";
5
5
  export { AnalyzeDocumentChain, } from "./analyze_documents_chain.js";
6
6
  export { VectorDBQAChain } from "./vector_db_qa.js";
7
7
  export { loadChain } from "./load.js";
8
- export { loadQAChain } from "./question_answering/load.js";
8
+ export { loadQAChain, loadQAStuffChain, loadQAMapReduceChain, } from "./question_answering/load.js";
9
9
  export { loadSummarizationChain } from "./summarization/load.js";
10
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/chains/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,GAIV,MAAM,WAAW,CAAC;AACnB,OAAO,EAEL,QAAQ,EACR,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,mBAAmB,EAEnB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,mBAAmB,GAEpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,GAErB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,eAAe,EAA6B,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/chains/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,GAIV,MAAM,WAAW,CAAC;AACnB,OAAO,EAEL,QAAQ,EACR,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,mBAAmB,EAEnB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,mBAAmB,GAEpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,GAErB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,eAAe,EAA6B,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { BaseChain, ChainInputs, ChainValues } from "./index.js";
2
- import { BaseLLM, SerializedLLM } from "../llms/index.js";
2
+ import { SerializedLLM } from "../llms/index.js";
3
3
  import { BaseLanguageModel } from "../schema/index.js";
4
4
  import { BaseMemory } from "../memory/index.js";
5
5
  import { BasePromptTemplate, SerializedBasePromptTemplate } from "../prompts/index.js";
@@ -60,7 +60,7 @@ export declare class LLMChain extends BaseChain implements LLMChainInput {
60
60
  }
61
61
  export declare class ConversationChain extends LLMChain {
62
62
  constructor(fields: {
63
- llm: BaseLLM;
63
+ llm: BaseLanguageModel;
64
64
  prompt?: BasePromptTemplate;
65
65
  outputKey?: string;
66
66
  memory?: BaseMemory;
@@ -0,0 +1,21 @@
1
+ import { BaseChatModel } from "../chat_models/base.js";
2
+ import { BaseLLM } from "../llms/base.js";
3
+ import { BasePromptTemplate } from "../prompts/base.js";
4
+ import { BaseLanguageModel } from "../schema/index.js";
5
+ export declare abstract class BasePromptSelector {
6
+ abstract getPrompt(llm: BaseLanguageModel): BasePromptTemplate;
7
+ }
8
+ export declare class ConditionalPromptSelector extends BasePromptSelector {
9
+ defaultPrompt: BasePromptTemplate;
10
+ conditionals: Array<[
11
+ condition: (llm: BaseLanguageModel) => boolean,
12
+ prompt: BasePromptTemplate
13
+ ]>;
14
+ constructor(default_prompt: BasePromptTemplate, conditionals?: Array<[
15
+ condition: (llm: BaseLanguageModel) => boolean,
16
+ prompt: BasePromptTemplate
17
+ ]>);
18
+ getPrompt(llm: BaseLanguageModel): BasePromptTemplate;
19
+ }
20
+ export declare function isLLM(llm: BaseLanguageModel): llm is BaseLLM;
21
+ export declare function isChatModel(llm: BaseLanguageModel): llm is BaseChatModel;
@@ -0,0 +1,38 @@
1
+ import { BaseChatModel } from "../chat_models/base.js";
2
+ import { BaseLLM } from "../llms/base.js";
3
+ export class BasePromptSelector {
4
+ }
5
+ export class ConditionalPromptSelector extends BasePromptSelector {
6
+ constructor(default_prompt, conditionals = []) {
7
+ super();
8
+ Object.defineProperty(this, "defaultPrompt", {
9
+ enumerable: true,
10
+ configurable: true,
11
+ writable: true,
12
+ value: void 0
13
+ });
14
+ Object.defineProperty(this, "conditionals", {
15
+ enumerable: true,
16
+ configurable: true,
17
+ writable: true,
18
+ value: void 0
19
+ });
20
+ this.defaultPrompt = default_prompt;
21
+ this.conditionals = conditionals;
22
+ }
23
+ getPrompt(llm) {
24
+ for (const [condition, prompt] of this.conditionals) {
25
+ if (condition(llm)) {
26
+ return prompt;
27
+ }
28
+ }
29
+ return this.defaultPrompt;
30
+ }
31
+ }
32
+ export function isLLM(llm) {
33
+ return llm instanceof BaseLLM;
34
+ }
35
+ export function isChatModel(llm) {
36
+ return llm instanceof BaseChatModel;
37
+ }
38
+ //# sourceMappingURL=prompt_selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt_selector.js","sourceRoot":"","sources":["../../src/chains/prompt_selector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAI1C,MAAM,OAAgB,kBAAkB;CAEvC;AAED,MAAM,OAAO,yBAA0B,SAAQ,kBAAkB;IAO/D,YACE,cAAkC,EAClC,eAKI,EAAE;QAEN,KAAK,EAAE,CAAC;QAfV;;;;;WAAkC;QAElC;;;;;WAEE;QAYA,IAAI,CAAC,aAAa,GAAG,cAAc,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED,SAAS,CAAC,GAAsB;QAC9B,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE;YACnD,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;gBAClB,OAAO,MAAM,CAAC;aACf;SACF;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,UAAU,KAAK,CAAC,GAAsB;IAC1C,OAAO,GAAG,YAAY,OAAO,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAsB;IAChD,OAAO,GAAG,YAAY,aAAa,CAAC;AACtC,CAAC"}
@@ -8,4 +8,13 @@ interface qaChainParams {
8
8
  type?: string;
9
9
  }
10
10
  export declare const loadQAChain: (llm: BaseLLM, params?: qaChainParams) => StuffDocumentsChain | MapReduceDocumentsChain;
11
+ interface StuffQAChainParams {
12
+ prompt?: PromptTemplate;
13
+ }
14
+ export declare const loadQAStuffChain: (llm: BaseLLM, params?: StuffQAChainParams) => StuffDocumentsChain;
15
+ interface MapReduceQAChainParams {
16
+ combineMapPrompt?: PromptTemplate;
17
+ combinePrompt?: PromptTemplate;
18
+ }
19
+ export declare const loadQAMapReduceChain: (llm: BaseLLM, params?: MapReduceQAChainParams) => MapReduceDocumentsChain;
11
20
  export {};
@@ -1,7 +1,7 @@
1
1
  import { LLMChain } from "../llm_chain.js";
2
2
  import { StuffDocumentsChain, MapReduceDocumentsChain, } from "../combine_docs_chain.js";
3
- import { DEFAULT_QA_PROMPT } from "./stuff_prompts.js";
4
- import { COMBINE_PROMPT, DEFAULT_COMBINE_QA_PROMPT, } from "./map_reduce_prompts.js";
3
+ import { QA_PROMPT_SELECTOR, DEFAULT_QA_PROMPT } from "./stuff_prompts.js";
4
+ import { COMBINE_PROMPT, DEFAULT_COMBINE_QA_PROMPT, COMBINE_PROMPT_SELECTOR, COMBINE_QA_PROMPT_SELECTOR, } from "./map_reduce_prompts.js";
5
5
  export const loadQAChain = (llm, params = {}) => {
6
6
  const { prompt = DEFAULT_QA_PROMPT, combineMapPrompt = DEFAULT_COMBINE_QA_PROMPT, combinePrompt = COMBINE_PROMPT, type = "stuff", } = params;
7
7
  if (type === "stuff") {
@@ -24,4 +24,24 @@ export const loadQAChain = (llm, params = {}) => {
24
24
  }
25
25
  throw new Error(`Invalid _type: ${type}`);
26
26
  };
27
+ export const loadQAStuffChain = (llm, params = {}) => {
28
+ const { prompt = QA_PROMPT_SELECTOR.getPrompt(llm) } = params;
29
+ const llmChain = new LLMChain({ prompt, llm });
30
+ const chain = new StuffDocumentsChain({ llmChain });
31
+ return chain;
32
+ };
33
+ export const loadQAMapReduceChain = (llm, params = {}) => {
34
+ const { combineMapPrompt = COMBINE_QA_PROMPT_SELECTOR.getPrompt(llm), combinePrompt = COMBINE_PROMPT_SELECTOR.getPrompt(llm), } = params;
35
+ const llmChain = new LLMChain({ prompt: combineMapPrompt, llm });
36
+ const combineLLMChain = new LLMChain({ prompt: combinePrompt, llm });
37
+ const combineDocumentChain = new StuffDocumentsChain({
38
+ llmChain: combineLLMChain,
39
+ documentVariableName: "summaries",
40
+ });
41
+ const chain = new MapReduceDocumentsChain({
42
+ llmChain,
43
+ combineDocumentChain,
44
+ });
45
+ return chain;
46
+ };
27
47
  //# sourceMappingURL=load.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"load.js","sourceRoot":"","sources":["../../../src/chains/question_answering/load.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EACL,cAAc,EACd,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AAQjC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAY,EAAE,SAAwB,EAAE,EAAE,EAAE;IACtE,MAAM,EACJ,MAAM,GAAG,iBAAiB,EAC1B,gBAAgB,GAAG,yBAAyB,EAC5C,aAAa,GAAG,cAAc,EAC9B,IAAI,GAAG,OAAO,GACf,GAAG,MAAM,CAAC;IACX,IAAI,IAAI,KAAK,OAAO,EAAE;QACpB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpD,OAAO,KAAK,CAAC;KACd;IACD,IAAI,IAAI,KAAK,YAAY,EAAE;QACzB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;QACjE,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;QACrE,MAAM,oBAAoB,GAAG,IAAI,mBAAmB,CAAC;YACnD,QAAQ,EAAE,eAAe;YACzB,oBAAoB,EAAE,WAAW;SAClC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,uBAAuB,CAAC;YACxC,QAAQ;YACR,oBAAoB;SACrB,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;KACd;IACD,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC"}
1
+ {"version":3,"file":"load.js","sourceRoot":"","sources":["../../../src/chains/question_answering/load.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AAQjC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAY,EAAE,SAAwB,EAAE,EAAE,EAAE;IACtE,MAAM,EACJ,MAAM,GAAG,iBAAiB,EAC1B,gBAAgB,GAAG,yBAAyB,EAC5C,aAAa,GAAG,cAAc,EAC9B,IAAI,GAAG,OAAO,GACf,GAAG,MAAM,CAAC;IACX,IAAI,IAAI,KAAK,OAAO,EAAE;QACpB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpD,OAAO,KAAK,CAAC;KACd;IACD,IAAI,IAAI,KAAK,YAAY,EAAE;QACzB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;QACjE,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;QACrE,MAAM,oBAAoB,GAAG,IAAI,mBAAmB,CAAC;YACnD,QAAQ,EAAE,eAAe;YACzB,oBAAoB,EAAE,WAAW;SAClC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,uBAAuB,CAAC;YACxC,QAAQ;YACR,oBAAoB;SACrB,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;KACd;IACD,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,GAAY,EACZ,SAA6B,EAAE,EAC/B,EAAE;IACF,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC;IAC9D,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,IAAI,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,GAAY,EACZ,SAAiC,EAAE,EACnC,EAAE;IACF,MAAM,EACJ,gBAAgB,GAAG,0BAA0B,CAAC,SAAS,CAAC,GAAG,CAAC,EAC5D,aAAa,GAAG,uBAAuB,CAAC,SAAS,CAAC,GAAG,CAAC,GACvD,GAAG,MAAM,CAAC;IACX,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;IACjE,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;IACrE,MAAM,oBAAoB,GAAG,IAAI,mBAAmB,CAAC;QACnD,QAAQ,EAAE,eAAe;QACzB,oBAAoB,EAAE,WAAW;KAClC,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,uBAAuB,CAAC;QACxC,QAAQ;QACR,oBAAoB;KACrB,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
@@ -1,3 +1,6 @@
1
1
  import { PromptTemplate } from "../../prompts/index.js";
2
+ import { ConditionalPromptSelector } from "../prompt_selector.js";
2
3
  export declare const DEFAULT_COMBINE_QA_PROMPT: PromptTemplate;
4
+ export declare const COMBINE_QA_PROMPT_SELECTOR: ConditionalPromptSelector;
3
5
  export declare const COMBINE_PROMPT: PromptTemplate;
6
+ export declare const COMBINE_PROMPT_SELECTOR: ConditionalPromptSelector;
@@ -1,11 +1,22 @@
1
1
  /* eslint-disable */
2
- import { PromptTemplate } from "../../prompts/index.js";
2
+ import { PromptTemplate, ChatPromptTemplate, SystemMessagePromptTemplate, HumanMessagePromptTemplate, } from "../../prompts/index.js";
3
+ import { ConditionalPromptSelector, isChatModel } from "../prompt_selector.js";
3
4
  const qa_template = `Use the following portion of a long document to see if any of the text is relevant to answer the question.
4
5
  Return any relevant text verbatim.
5
6
  {context}
6
7
  Question: {question}
7
8
  Relevant text, if any:`;
8
9
  export const DEFAULT_COMBINE_QA_PROMPT = PromptTemplate.fromTemplate(qa_template);
10
+ const system_template = `Use the following portion of a long document to see if any of the text is relevant to answer the question.
11
+ Return any relevant text verbatim.
12
+ ----------------
13
+ {context}`;
14
+ const messages = [
15
+ SystemMessagePromptTemplate.fromTemplate(system_template),
16
+ HumanMessagePromptTemplate.fromTemplate("{question}"),
17
+ ];
18
+ const CHAT_QA_PROMPT = ChatPromptTemplate.fromPromptMessages(messages);
19
+ export const COMBINE_QA_PROMPT_SELECTOR = new ConditionalPromptSelector(DEFAULT_COMBINE_QA_PROMPT, [[isChatModel, CHAT_QA_PROMPT]]);
9
20
  const combine_prompt = `Given the following extracted parts of a long document and a question, create a final answer.
10
21
  If you don't know the answer, just say that you don't know. Don't try to make up an answer.
11
22
 
@@ -37,4 +48,14 @@ QUESTION: {question}
37
48
  =========
38
49
  FINAL ANSWER:`;
39
50
  export const COMBINE_PROMPT = PromptTemplate.fromTemplate(combine_prompt);
51
+ const system_combine_template = `Given the following extracted parts of a long document and a question, create a final answer.
52
+ If you don't know the answer, just say that you don't know. Don't try to make up an answer.
53
+ ----------------
54
+ {summaries}`;
55
+ const combine_messages = [
56
+ SystemMessagePromptTemplate.fromTemplate(system_combine_template),
57
+ HumanMessagePromptTemplate.fromTemplate("{question}"),
58
+ ];
59
+ const CHAT_COMBINE_PROMPT = ChatPromptTemplate.fromPromptMessages(combine_messages);
60
+ export const COMBINE_PROMPT_SELECTOR = new ConditionalPromptSelector(COMBINE_PROMPT, [[isChatModel, CHAT_COMBINE_PROMPT]]);
40
61
  //# sourceMappingURL=map_reduce_prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"map_reduce_prompts.js","sourceRoot":"","sources":["../../../src/chains/question_answering/map_reduce_prompts.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,MAAM,WAAW,GAAG;;;;uBAIG,CAAC;AACxB,MAAM,CAAC,MAAM,yBAAyB,GACpC,cAAc,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;AAE3C,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6BT,CAAC;AACf,MAAM,CAAC,MAAM,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"map_reduce_prompts.js","sourceRoot":"","sources":["../../../src/chains/question_answering/map_reduce_prompts.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAE/E,MAAM,WAAW,GAAG;;;;uBAIG,CAAC;AACxB,MAAM,CAAC,MAAM,yBAAyB,GACpC,cAAc,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;AAE3C,MAAM,eAAe,GAAG;;;UAGd,CAAC;AACX,MAAM,QAAQ,GAAG;IACf,2BAA2B,CAAC,YAAY,CAAC,eAAe,CAAC;IACzD,0BAA0B,CAAC,YAAY,CAAC,YAAY,CAAC;CACtD,CAAC;AACF,MAAM,cAAc,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,yBAAyB,CACrE,yBAAyB,EACzB,CAAC,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAChC,CAAC;AAEF,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6BT,CAAC;AACf,MAAM,CAAC,MAAM,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;AAE1E,MAAM,uBAAuB,GAAG;;;YAGpB,CAAC;AACb,MAAM,gBAAgB,GAAG;IACvB,2BAA2B,CAAC,YAAY,CAAC,uBAAuB,CAAC;IACjE,0BAA0B,CAAC,YAAY,CAAC,YAAY,CAAC;CACtD,CAAC;AACF,MAAM,mBAAmB,GACvB,kBAAkB,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,yBAAyB,CAClE,cAAc,EACd,CAAC,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC,CACrC,CAAC"}
@@ -1,2 +1,4 @@
1
1
  import { PromptTemplate } from "../../prompts/index.js";
2
+ import { ConditionalPromptSelector } from "../prompt_selector.js";
2
3
  export declare const DEFAULT_QA_PROMPT: PromptTemplate;
4
+ export declare const QA_PROMPT_SELECTOR: ConditionalPromptSelector;
@@ -1,7 +1,18 @@
1
1
  /* eslint-disable */
2
- import { PromptTemplate } from "../../prompts/index.js";
2
+ import { PromptTemplate, ChatPromptTemplate, SystemMessagePromptTemplate, HumanMessagePromptTemplate, } from "../../prompts/index.js";
3
+ import { ConditionalPromptSelector, isChatModel } from "../prompt_selector.js";
3
4
  export const DEFAULT_QA_PROMPT = new PromptTemplate({
4
5
  template: "Use the following pieces of context to answer the question at the end. If you don't know the answer, just say that you don't know, don't try to make up an answer.\n\n{context}\n\nQuestion: {question}\nHelpful Answer:",
5
6
  inputVariables: ["context", "question"],
6
7
  });
8
+ const system_template = `Use the following pieces of context to answer the users question.
9
+ If you don't know the answer, just say that you don't know, don't try to make up an answer.
10
+ ----------------
11
+ {context}`;
12
+ const messages = [
13
+ SystemMessagePromptTemplate.fromTemplate(system_template),
14
+ HumanMessagePromptTemplate.fromTemplate("{question}"),
15
+ ];
16
+ const CHAT_PROMPT = ChatPromptTemplate.fromPromptMessages(messages);
17
+ export const QA_PROMPT_SELECTOR = new ConditionalPromptSelector(DEFAULT_QA_PROMPT, [[isChatModel, CHAT_PROMPT]]);
7
18
  //# sourceMappingURL=stuff_prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stuff_prompts.js","sourceRoot":"","sources":["../../../src/chains/question_answering/stuff_prompts.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAAC;IAClD,QAAQ,EACN,0NAA0N;IAC5N,cAAc,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;CACxC,CAAC,CAAC"}
1
+ {"version":3,"file":"stuff_prompts.js","sourceRoot":"","sources":["../../../src/chains/question_answering/stuff_prompts.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAE/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAAC;IAClD,QAAQ,EACN,0NAA0N;IAC5N,cAAc,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;CACxC,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG;;;UAGd,CAAC;AACX,MAAM,QAAQ,GAAG;IACf,2BAA2B,CAAC,YAAY,CAAC,eAAe,CAAC;IACzD,0BAA0B,CAAC,YAAY,CAAC,YAAY,CAAC;CACtD,CAAC;AACF,MAAM,WAAW,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AAEpE,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,yBAAyB,CAC7D,iBAAiB,EACjB,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAC7B,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import { test } from "@jest/globals";
2
2
  import { OpenAI } from "../../../llms/openai.js";
3
- import { loadQAChain } from "../load.js";
3
+ import { loadQAMapReduceChain, loadQAStuffChain } from "../load.js";
4
4
  import { Document } from "../../../document.js";
5
- test("Test loadQAChain", async () => {
5
+ test("Test loadQAStuffChain", async () => {
6
6
  const model = new OpenAI({ modelName: "text-ada-001" });
7
- const chain = loadQAChain(model);
7
+ const chain = loadQAStuffChain(model);
8
8
  const docs = [
9
9
  new Document({ pageContent: "foo" }),
10
10
  new Document({ pageContent: "bar" }),
@@ -13,9 +13,9 @@ test("Test loadQAChain", async () => {
13
13
  const res = await chain.call({ input_documents: docs, question: "Whats up" });
14
14
  console.log({ res });
15
15
  });
16
- test("Test loadQAChain map_reduce", async () => {
16
+ test("Test loadQAMapReduceChain", async () => {
17
17
  const model = new OpenAI({ modelName: "text-ada-001" });
18
- const chain = loadQAChain(model, { type: "map_reduce" });
18
+ const chain = loadQAMapReduceChain(model);
19
19
  const docs = [
20
20
  new Document({ pageContent: "foo" }),
21
21
  new Document({ pageContent: "bar" }),
@@ -1 +1 @@
1
- {"version":3,"file":"load.int.test.js","sourceRoot":"","sources":["../../../../src/chains/question_answering/tests/load.int.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,IAAI,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;IAClC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,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;AAEH,IAAI,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;IAC7C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,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"}
1
+ {"version":3,"file":"load.int.test.js","sourceRoot":"","sources":["../../../../src/chains/question_answering/tests/load.int.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,IAAI,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;IACvC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,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;AAEH,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;IAC3C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,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"}
@@ -13,7 +13,7 @@ test("Test loadSummzationChain", async () => {
13
13
  const res = await chain.call({ input_documents: docs, question: "Whats up" });
14
14
  console.log({ res });
15
15
  });
16
- test("Test loadQAChain map_reduce", async () => {
16
+ test("Test loadSummarizationChain map_reduce", async () => {
17
17
  const model = new OpenAI({ modelName: "text-ada-001" });
18
18
  const chain = loadSummarizationChain(model, { type: "map_reduce" });
19
19
  const docs = [
@@ -1 +1 @@
1
- {"version":3,"file":"load.int.test.js","sourceRoot":"","sources":["../../../../src/chains/summarization/tests/load.int.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,IAAI,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,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;AAEH,IAAI,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;IAC7C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,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"}
1
+ {"version":3,"file":"load.int.test.js","sourceRoot":"","sources":["../../../../src/chains/summarization/tests/load.int.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,IAAI,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,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;AAEH,IAAI,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;IACxD,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,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"}
@@ -5,7 +5,7 @@ import { LLMChain } from "../llm_chain.js";
5
5
  import { loadChain } from "../load.js";
6
6
  import { StuffDocumentsChain } from "../combine_docs_chain.js";
7
7
  import { Document } from "../../document.js";
8
- import { loadQAChain } from "../question_answering/load.js";
8
+ import { loadQAMapReduceChain } from "../question_answering/load.js";
9
9
  test("Test StuffDocumentsChain", async () => {
10
10
  const model = new OpenAI({ modelName: "text-ada-001" });
11
11
  const prompt = new PromptTemplate({
@@ -27,7 +27,7 @@ test("Test StuffDocumentsChain", async () => {
27
27
  });
28
28
  test("Test MapReduceDocumentsChain with QA chain", async () => {
29
29
  const model = new OpenAI({ temperature: 0, modelName: "text-ada-001" });
30
- const chain = loadQAChain(model, { type: "map_reduce" });
30
+ const chain = loadQAMapReduceChain(model);
31
31
  const docs = [
32
32
  new Document({ pageContent: "harrison went to harvard" }),
33
33
  new Document({ pageContent: "ankush went to princeton" }),
@@ -1 +1 @@
1
- {"version":3,"file":"combine_docs_chain.int.test.js","sourceRoot":"","sources":["../../../src/chains/tests/combine_docs_chain.int.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"combine_docs_chain.int.test.js","sourceRoot":"","sources":["../../../src/chains/tests/combine_docs_chain.int.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { test, expect } from "@jest/globals";
2
2
  import { Document } from "../../document.js";
3
3
  import { BaseLLM } from "../../llms/index.js";
4
- import { loadQAChain } from "../question_answering/load.js";
4
+ import { loadQAMapReduceChain } from "../question_answering/load.js";
5
5
  test("Test MapReduceDocumentsChain", async () => {
6
6
  let nrMapCalls = 0;
7
7
  let nrReduceCalls = 0;
@@ -32,7 +32,7 @@ test("Test MapReduceDocumentsChain", async () => {
32
32
  }
33
33
  }
34
34
  const model = new FakeLLM({});
35
- const chain = loadQAChain(model, { type: "map_reduce" });
35
+ const chain = loadQAMapReduceChain(model);
36
36
  const docs = [
37
37
  new Document({ pageContent: "harrison went to harvard" }),
38
38
  new Document({ pageContent: "ankush went to princeton" }),
@@ -1 +1 @@
1
- {"version":3,"file":"combine_docs_chain.test.js","sourceRoot":"","sources":["../../../src/chains/tests/combine_docs_chain.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAG5D,IAAI,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;IAC9C,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,MAAM,OAAQ,SAAQ,OAAO;QAC3B,QAAQ;YACN,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,OAAiB,EAAE,CAAY;YAC7C,OAAO;gBACL,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBAClC,IAAI,UAAU,GAAG,EAAE,CAAC;oBACpB,IAAI,MAAM,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE;wBAClD,UAAU,IAAI,CAAC,CAAC;wBAChB,UAAU,GAAG,sBAAsB,CAAC;qBACrC;yBAAM,IAAI,MAAM,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE;wBAC7D,aAAa,IAAI,CAAC,CAAC;wBACnB,UAAU,GAAG,gBAAgB,CAAC;qBAC/B;oBACD,OAAO;wBACL;4BACE,IAAI,EAAE,UAAU;4BAChB,KAAK,EAAE,CAAC;yBACT;qBACF,CAAC;gBACJ,CAAC,CAAC;aACH,CAAC;QACJ,CAAC;KACF;IAED,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;QACzD,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;KAC1D,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;QAC3B,eAAe,EAAE,IAAI;QACrB,QAAQ,EAAE,kCAAkC;KAC7C,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAErB,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;QAClB,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAC;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB;IAC9C,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"combine_docs_chain.test.js","sourceRoot":"","sources":["../../../src/chains/tests/combine_docs_chain.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAGrE,IAAI,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;IAC9C,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,MAAM,OAAQ,SAAQ,OAAO;QAC3B,QAAQ;YACN,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,OAAiB,EAAE,CAAY;YAC7C,OAAO;gBACL,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBAClC,IAAI,UAAU,GAAG,EAAE,CAAC;oBACpB,IAAI,MAAM,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE;wBAClD,UAAU,IAAI,CAAC,CAAC;wBAChB,UAAU,GAAG,sBAAsB,CAAC;qBACrC;yBAAM,IAAI,MAAM,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE;wBAC7D,aAAa,IAAI,CAAC,CAAC;wBACnB,UAAU,GAAG,gBAAgB,CAAC;qBAC/B;oBACD,OAAO;wBACL;4BACE,IAAI,EAAE,UAAU;4BAChB,KAAK,EAAE,CAAC;yBACT;qBACF,CAAC;gBACJ,CAAC,CAAC;aACH,CAAC;QACJ,CAAC;KACF;IAED,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG;QACX,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;QACzD,IAAI,QAAQ,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;KAC1D,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;QAC3B,eAAe,EAAE,IAAI;QACrB,QAAQ,EAAE,kCAAkC;KAC7C,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAErB,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;QAClB,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAC;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB;IAC9C,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { BaseChain, loadQAChain, } from "./index.js";
1
+ import { BaseChain, loadQAStuffChain, } from "./index.js";
2
2
  import { resolveConfigFromFile } from "../util/index.js";
3
3
  export class VectorDBQAChain extends BaseChain {
4
4
  get inputKeys() {
@@ -89,9 +89,8 @@ export class VectorDBQAChain extends BaseChain {
89
89
  };
90
90
  }
91
91
  static fromLLM(llm, vectorstore) {
92
- const qaChain = loadQAChain(llm);
93
- const instance = new this({ vectorstore, combineDocumentsChain: qaChain });
94
- return instance;
92
+ const qaChain = loadQAStuffChain(llm);
93
+ return new this({ vectorstore, combineDocumentsChain: qaChain });
95
94
  }
96
95
  }
97
96
  //# sourceMappingURL=vector_db_qa.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vector_db_qa.js","sourceRoot":"","sources":["../../src/chains/vector_db_qa.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vector_db_qa.js","sourceRoot":"","sources":["../../src/chains/vector_db_qa.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
+ export { BaseChatModel, SimpleChatModel } from "./base.js";
1
2
  export { ChatOpenAI } from "./openai.js";
@@ -1,2 +1,3 @@
1
+ export { BaseChatModel, SimpleChatModel } from "./base.js";
1
2
  export { ChatOpenAI } from "./openai.js";
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/chat_models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/chat_models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export type { DocumentLoader } from "./base.js";
2
2
  export { BaseDocumentLoader } from "./base.js";
3
3
  export { CheerioWebBaseLoader } from "./cheerio_web_base.js";
4
+ export { PuppeteerWebBaseLoader, PuppeteerEvaluate, } from "./puppeteer_web_base.js";
4
5
  export { CollegeConfidentialLoader } from "./college_confidential.js";
5
6
  export { GitbookLoader } from "./gitbook.js";
6
7
  export { HNLoader } from "./hn.js";
@@ -1,5 +1,6 @@
1
1
  export { BaseDocumentLoader } from "./base.js";
2
2
  export { CheerioWebBaseLoader } from "./cheerio_web_base.js";
3
+ export { PuppeteerWebBaseLoader, } from "./puppeteer_web_base.js";
3
4
  export { CollegeConfidentialLoader } from "./college_confidential.js";
4
5
  export { GitbookLoader } from "./gitbook.js";
5
6
  export { HNLoader } from "./hn.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/document_loaders/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/document_loaders/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EACL,sBAAsB,GAEvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { launch, WaitForOptions, Page, Browser, PuppeteerLaunchOptions } from "puppeteer";
2
+ import { Document } from "../document.js";
3
+ import { BaseDocumentLoader } from "./base.js";
4
+ import type { DocumentLoader } from "./base.js";
5
+ export { Page, Browser };
6
+ export type PuppeteerGotoOptions = WaitForOptions & {
7
+ referer?: string;
8
+ referrerPolicy?: string;
9
+ };
10
+ export type PuppeteerEvaluate = (page: Page, browser: Browser) => Promise<string>;
11
+ export type PuppeteerWebBaseLoaderOptions = {
12
+ launchOptions?: PuppeteerLaunchOptions;
13
+ gotoOptions?: PuppeteerGotoOptions;
14
+ evaluate?: PuppeteerEvaluate;
15
+ };
16
+ export declare class PuppeteerWebBaseLoader extends BaseDocumentLoader implements DocumentLoader {
17
+ webPath: string;
18
+ options: PuppeteerWebBaseLoaderOptions | undefined;
19
+ constructor(webPath: string, options?: PuppeteerWebBaseLoaderOptions);
20
+ static _scrape(url: string, options?: PuppeteerWebBaseLoaderOptions): Promise<string>;
21
+ scrape(): Promise<string>;
22
+ load(): Promise<Document[]>;
23
+ static imports(): Promise<{
24
+ launch: typeof launch;
25
+ }>;
26
+ }
@@ -0,0 +1,60 @@
1
+ import { Document } from "../document.js";
2
+ import { BaseDocumentLoader } from "./base.js";
3
+ export class PuppeteerWebBaseLoader extends BaseDocumentLoader {
4
+ constructor(webPath, options) {
5
+ super();
6
+ Object.defineProperty(this, "webPath", {
7
+ enumerable: true,
8
+ configurable: true,
9
+ writable: true,
10
+ value: webPath
11
+ });
12
+ Object.defineProperty(this, "options", {
13
+ enumerable: true,
14
+ configurable: true,
15
+ writable: true,
16
+ value: void 0
17
+ });
18
+ this.options = options ?? undefined;
19
+ }
20
+ static async _scrape(url, options) {
21
+ const { launch } = await PuppeteerWebBaseLoader.imports();
22
+ const browser = await launch({
23
+ headless: true,
24
+ defaultViewport: null,
25
+ ignoreDefaultArgs: ["--disable-extensions"],
26
+ ...options?.launchOptions,
27
+ });
28
+ const page = await browser.newPage();
29
+ await page.goto(url, {
30
+ timeout: 180000,
31
+ waitUntil: "domcontentloaded",
32
+ ...options?.gotoOptions,
33
+ });
34
+ const bodyHTML = options?.evaluate
35
+ ? await options?.evaluate(page, browser)
36
+ : await page.evaluate(() => document.body.innerHTML);
37
+ await browser.close();
38
+ return bodyHTML;
39
+ }
40
+ async scrape() {
41
+ return PuppeteerWebBaseLoader._scrape(this.webPath, this.options);
42
+ }
43
+ async load() {
44
+ const text = await this.scrape();
45
+ const metadata = { source: this.webPath };
46
+ return [new Document({ pageContent: text, metadata })];
47
+ }
48
+ static async imports() {
49
+ try {
50
+ // eslint-disable-next-line import/no-extraneous-dependencies
51
+ const { launch } = await import("puppeteer");
52
+ return { launch };
53
+ }
54
+ catch (e) {
55
+ console.error(e);
56
+ throw new Error("Please install puppeteer as a dependency with, e.g. `yarn add puppeteer`");
57
+ }
58
+ }
59
+ }
60
+ //# sourceMappingURL=puppeteer_web_base.js.map