langchain 0.0.21 → 0.0.22

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.
@@ -1,6 +1,6 @@
1
- import { BaseChain, ChainValues, SerializedBaseChain, SerializedLLMChain, LLMChain } from "./index.js";
2
- import { VectorStore } from "../vectorstores/base.js";
1
+ import { BaseChain, ChainValues, LLMChain, SerializedBaseChain, SerializedLLMChain } from "./index.js";
3
2
  import { BaseLLM } from "../llms/index.js";
3
+ import { VectorStore } from "../vectorstores/base.js";
4
4
  export type LoadValues = Record<string, any>;
5
5
  export interface ChatVectorDBQAChainInput {
6
6
  vectorstore: VectorStore;
@@ -26,6 +26,7 @@ export declare class ChatVectorDBQAChain extends BaseChain implements ChatVector
26
26
  vectorstore: VectorStore;
27
27
  combineDocumentsChain: BaseChain;
28
28
  questionGeneratorChain: LLMChain;
29
+ returnSourceDocuments: boolean;
29
30
  constructor(fields: {
30
31
  vectorstore: VectorStore;
31
32
  combineDocumentsChain: BaseChain;
@@ -33,6 +34,7 @@ export declare class ChatVectorDBQAChain extends BaseChain implements ChatVector
33
34
  inputKey?: string;
34
35
  outputKey?: string;
35
36
  k?: number;
37
+ returnSourceDocuments?: boolean;
36
38
  });
37
39
  _call(values: ChainValues): Promise<ChainValues>;
38
40
  _chainType(): "chat-vector-db";
@@ -1,4 +1,4 @@
1
- import { BaseChain, loadQAChain, LLMChain, } from "./index.js";
1
+ import { BaseChain, LLMChain, loadQAChain, } 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.
@@ -63,12 +63,20 @@ export class ChatVectorDBQAChain extends BaseChain {
63
63
  writable: true,
64
64
  value: void 0
65
65
  });
66
+ Object.defineProperty(this, "returnSourceDocuments", {
67
+ enumerable: true,
68
+ configurable: true,
69
+ writable: true,
70
+ value: false
71
+ });
66
72
  this.vectorstore = fields.vectorstore;
67
73
  this.combineDocumentsChain = fields.combineDocumentsChain;
68
74
  this.questionGeneratorChain = fields.questionGeneratorChain;
69
75
  this.inputKey = fields.inputKey ?? this.inputKey;
70
76
  this.outputKey = fields.outputKey ?? this.outputKey;
71
77
  this.k = fields.k ?? this.k;
78
+ this.returnSourceDocuments =
79
+ fields.returnSourceDocuments ?? this.returnSourceDocuments;
72
80
  }
73
81
  async _call(values) {
74
82
  if (!(this.inputKey in values)) {
@@ -100,6 +108,12 @@ export class ChatVectorDBQAChain extends BaseChain {
100
108
  chat_history: chatHistory,
101
109
  };
102
110
  const result = await this.combineDocumentsChain.call(inputs);
111
+ if (this.returnSourceDocuments) {
112
+ return {
113
+ ...result,
114
+ sourceDocuments: docs,
115
+ };
116
+ }
103
117
  return result;
104
118
  }
105
119
  _chainType() {
@@ -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":"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"}
@@ -23,6 +23,24 @@ test("Test ChatVectorDBQAChain", async () => {
23
23
  const res = await chain.call({ question: "foo", chat_history: "bar" });
24
24
  console.log({ res });
25
25
  });
26
+ test("Test ChatVectorDBQAChain with returnSourceDocuments", async () => {
27
+ const model = new OpenAI({ modelName: "text-ada-001" });
28
+ const prompt = PromptTemplate.fromTemplate("Print {question}, and ignore {chat_history}");
29
+ const vectorStore = await HNSWLib.fromTexts(["Hello world", "Bye bye", "hello nice world", "bye", "hi"], [{ id: 2 }, { id: 1 }, { id: 3 }, { id: 4 }, { id: 5 }], new OpenAIEmbeddings());
30
+ const llmChain = new LLMChain({ prompt, llm: model });
31
+ const combineDocsChain = new StuffDocumentsChain({
32
+ llmChain,
33
+ documentVariableName: "foo",
34
+ });
35
+ const chain = new ChatVectorDBQAChain({
36
+ combineDocumentsChain: combineDocsChain,
37
+ vectorstore: vectorStore,
38
+ questionGeneratorChain: llmChain,
39
+ returnSourceDocuments: true,
40
+ });
41
+ const res = await chain.call({ question: "foo", chat_history: "bar" });
42
+ console.log({ res });
43
+ });
26
44
  test("Test ChatVectorDBQAChain from LLM", async () => {
27
45
  const model = new OpenAI({ modelName: "text-ada-001" });
28
46
  const vectorStore = await HNSWLib.fromTexts(["Hello world", "Bye bye", "hello nice world", "bye", "hi"], [{ id: 2 }, { id: 1 }, { id: 3 }, { id: 4 }, { id: 5 }], new OpenAIEmbeddings());
@@ -1 +1 @@
1
- {"version":3,"file":"chat_vector_db_qa_chain.int.test.js","sourceRoot":"","sources":["../../../src/chains/tests/chat_vector_db_qa_chain.int.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,IAAI,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CACxC,6CAA6C,CAC9C,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,SAAS,CACzC,CAAC,aAAa,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,EAC3D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EACvD,IAAI,gBAAgB,EAAE,CACvB,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAI,mBAAmB,CAAC;QAC/C,QAAQ;QACR,oBAAoB,EAAE,KAAK;KAC5B,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,mBAAmB,CAAC;QACpC,qBAAqB,EAAE,gBAAgB;QACvC,WAAW,EAAE,WAAW;QACxB,sBAAsB,EAAE,QAAQ;KACjC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;IACnD,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,SAAS,CACzC,CAAC,aAAa,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,EAC3D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EACvD,IAAI,gBAAgB,EAAE,CACvB,CAAC;IACF,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"chat_vector_db_qa_chain.int.test.js","sourceRoot":"","sources":["../../../src/chains/tests/chat_vector_db_qa_chain.int.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,IAAI,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CACxC,6CAA6C,CAC9C,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,SAAS,CACzC,CAAC,aAAa,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,EAC3D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EACvD,IAAI,gBAAgB,EAAE,CACvB,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAI,mBAAmB,CAAC;QAC/C,QAAQ;QACR,oBAAoB,EAAE,KAAK;KAC5B,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,mBAAmB,CAAC;QACpC,qBAAqB,EAAE,gBAAgB;QACvC,WAAW,EAAE,WAAW;QACxB,sBAAsB,EAAE,QAAQ;KACjC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;IACrE,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CACxC,6CAA6C,CAC9C,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,SAAS,CACzC,CAAC,aAAa,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,EAC3D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EACvD,IAAI,gBAAgB,EAAE,CACvB,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAI,mBAAmB,CAAC;QAC/C,QAAQ;QACR,oBAAoB,EAAE,KAAK;KAC5B,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,mBAAmB,CAAC;QACpC,qBAAqB,EAAE,gBAAgB;QACvC,WAAW,EAAE,WAAW;QACxB,sBAAsB,EAAE,QAAQ;QAChC,qBAAqB,EAAE,IAAI;KAC5B,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;IACnD,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,SAAS,CACzC,CAAC,aAAa,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,EAC3D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EACvD,IAAI,gBAAgB,EAAE,CACvB,CAAC;IACF,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
@@ -22,12 +22,14 @@ export declare class VectorDBQAChain extends BaseChain implements VectorDBQAChai
22
22
  outputKey: string;
23
23
  vectorstore: VectorStore;
24
24
  combineDocumentsChain: BaseChain;
25
+ returnSourceDocuments: boolean;
25
26
  constructor(fields: {
26
27
  vectorstore: VectorStore;
27
28
  combineDocumentsChain: BaseChain;
28
29
  inputKey?: string;
29
30
  outputKey?: string;
30
31
  k?: number;
32
+ returnSourceDocuments?: boolean;
31
33
  });
32
34
  _call(values: ChainValues): Promise<ChainValues>;
33
35
  _chainType(): "vector_db_qa";
@@ -36,11 +36,19 @@ export class VectorDBQAChain extends BaseChain {
36
36
  writable: true,
37
37
  value: void 0
38
38
  });
39
+ Object.defineProperty(this, "returnSourceDocuments", {
40
+ enumerable: true,
41
+ configurable: true,
42
+ writable: true,
43
+ value: false
44
+ });
39
45
  this.vectorstore = fields.vectorstore;
40
46
  this.combineDocumentsChain = fields.combineDocumentsChain;
41
47
  this.inputKey = fields.inputKey ?? this.inputKey;
42
48
  this.outputKey = fields.outputKey ?? this.outputKey;
43
49
  this.k = fields.k ?? this.k;
50
+ this.returnSourceDocuments =
51
+ fields.returnSourceDocuments ?? this.returnSourceDocuments;
44
52
  }
45
53
  async _call(values) {
46
54
  if (!(this.inputKey in values)) {
@@ -50,6 +58,12 @@ export class VectorDBQAChain extends BaseChain {
50
58
  const docs = await this.vectorstore.similaritySearch(question, this.k);
51
59
  const inputs = { question, input_documents: docs };
52
60
  const result = await this.combineDocumentsChain.call(inputs);
61
+ if (this.returnSourceDocuments) {
62
+ return {
63
+ ...result,
64
+ sourceDocuments: docs,
65
+ };
66
+ }
53
67
  return result;
54
68
  }
55
69
  _chainType() {
@@ -1 +1 @@
1
- {"version":3,"file":"vector_db_qa.js","sourceRoot":"","sources":["../../src/chains/vector_db_qa.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGT,WAAW,GACZ,MAAM,YAAY,CAAC;AAKpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAmBzD,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAK5C,IAAI,SAAS;QACX,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IAQD,YAAY,MAMX;QACC,KAAK,EAAE,CAAC;QArBV;;;;mBAAI,CAAC;WAAC;QAEN;;;;mBAAW,OAAO;WAAC;QAMnB;;;;mBAAY,QAAQ;WAAC;QAErB;;;;;WAAyB;QAEzB;;;;;WAAiC;QAU/B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC1D,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;IAC9B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAmB;QAC7B,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,QAAQ,aAAa,CAAC,CAAC;SAC7D;QACD,MAAM,QAAQ,GAAW,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,UAAU;QACR,OAAO,cAAuB,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,WAAW,CACtB,IAA+B,EAC/B,MAAkB;QAElB,IAAI,CAAC,CAAC,aAAa,IAAI,MAAM,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;SACH;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAC/B,MAAM,+BAA+B,GAAG,MAAM,qBAAqB,CAGjE,yBAAyB,EAAE,IAAI,CAAC,CAAC;QAEnC,OAAO,IAAI,eAAe,CAAC;YACzB,qBAAqB,EAAE,MAAM,SAAS,CAAC,WAAW,CAChD,+BAA+B,CAChC;YACD,CAAC,EAAE,IAAI,CAAC,CAAC;YACT,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,SAAS;QACP,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE;YACxB,uBAAuB,EAAE,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE;YAC/D,CAAC,EAAE,IAAI,CAAC,CAAC;SACV,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,GAAY,EAAE,WAAwB;QACnD,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3E,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
1
+ {"version":3,"file":"vector_db_qa.js","sourceRoot":"","sources":["../../src/chains/vector_db_qa.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cohere.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cohere.js","sourceRoot":"","sources":["../../src/embeddings/cohere.ts"],"names":[],"mappings":""}
package/dist/llms/hf.d.ts CHANGED
@@ -1,11 +1,27 @@
1
- import type HuggingFaceT from "huggingface";
2
1
  import { LLM, LLMCallbackManager } from "./index.js";
3
2
  interface HFInput {
4
3
  /** Model to use */
5
4
  model: string;
5
+ /** Sampling temperature to use */
6
+ temperature?: number;
7
+ /**
8
+ * Maximum number of tokens to generate in the completion.
9
+ */
10
+ maxTokens?: number;
11
+ /** Total probability mass of tokens to consider at each step */
12
+ topP?: number;
13
+ /** Integer to define the top tokens considered within the sample operation to create new text. */
14
+ topK?: number;
15
+ /** Penalizes repeated tokens according to frequency */
16
+ frequencyPenalty?: number;
6
17
  }
7
18
  export declare class HuggingFaceInference extends LLM implements HFInput {
8
19
  model: string;
20
+ temperature: number | undefined;
21
+ maxTokens: number | undefined;
22
+ topP: number | undefined;
23
+ topK: number | undefined;
24
+ frequencyPenalty: number | undefined;
9
25
  constructor(fields?: Partial<HFInput> & {
10
26
  callbackManager?: LLMCallbackManager;
11
27
  verbose?: boolean;
@@ -15,7 +31,7 @@ export declare class HuggingFaceInference extends LLM implements HFInput {
15
31
  _llmType(): string;
16
32
  _call(prompt: string, _stop?: string[]): Promise<string>;
17
33
  static imports(): Promise<{
18
- HuggingFace: typeof HuggingFaceT;
34
+ HfInference: typeof import("@huggingface/inference").HfInference;
19
35
  }>;
20
36
  }
21
37
  export {};
package/dist/llms/hf.js CHANGED
@@ -8,7 +8,42 @@ export class HuggingFaceInference extends LLM {
8
8
  writable: true,
9
9
  value: "gpt2"
10
10
  });
11
+ Object.defineProperty(this, "temperature", {
12
+ enumerable: true,
13
+ configurable: true,
14
+ writable: true,
15
+ value: undefined
16
+ });
17
+ Object.defineProperty(this, "maxTokens", {
18
+ enumerable: true,
19
+ configurable: true,
20
+ writable: true,
21
+ value: undefined
22
+ });
23
+ Object.defineProperty(this, "topP", {
24
+ enumerable: true,
25
+ configurable: true,
26
+ writable: true,
27
+ value: undefined
28
+ });
29
+ Object.defineProperty(this, "topK", {
30
+ enumerable: true,
31
+ configurable: true,
32
+ writable: true,
33
+ value: undefined
34
+ });
35
+ Object.defineProperty(this, "frequencyPenalty", {
36
+ enumerable: true,
37
+ configurable: true,
38
+ writable: true,
39
+ value: undefined
40
+ });
11
41
  this.model = fields?.model ?? this.model;
42
+ this.temperature = fields?.temperature ?? this.temperature;
43
+ this.maxTokens = fields?.maxTokens ?? this.maxTokens;
44
+ this.topP = fields?.topP ?? this.topP;
45
+ this.topK = fields?.topK ?? this.topK;
46
+ this.frequencyPenalty = fields?.frequencyPenalty ?? this.frequencyPenalty;
12
47
  }
13
48
  _llmType() {
14
49
  return "huggingface_hub";
@@ -17,18 +52,27 @@ export class HuggingFaceInference extends LLM {
17
52
  if (process.env.HUGGINGFACEHUB_API_KEY === "") {
18
53
  throw new Error("Please set the HUGGINGFACEHUB_API_KEY environment variable");
19
54
  }
20
- const { HuggingFace } = await HuggingFaceInference.imports();
21
- const hf = new HuggingFace(process.env.HUGGINGFACEHUB_API_KEY ?? "");
55
+ const { HfInference } = await HuggingFaceInference.imports();
56
+ const hf = new HfInference(process.env.HUGGINGFACEHUB_API_KEY ?? "");
22
57
  const res = await hf.textGeneration({
23
58
  model: this.model,
59
+ parameters: {
60
+ // make it behave similar to openai, returning only the generated text
61
+ return_full_text: false,
62
+ temperature: this.temperature,
63
+ max_new_tokens: this.maxTokens,
64
+ top_p: this.topP,
65
+ top_k: this.topK,
66
+ repetition_penalty: this.frequencyPenalty,
67
+ },
24
68
  inputs: prompt,
25
69
  });
26
70
  return res.generated_text;
27
71
  }
28
72
  static async imports() {
29
73
  try {
30
- const { default: HuggingFace } = await import("huggingface");
31
- return { HuggingFace };
74
+ const { HfInference } = await import("@huggingface/inference");
75
+ return { HfInference };
32
76
  }
33
77
  catch (e) {
34
78
  throw new Error("Please install huggingface as a dependency with, e.g. `yarn add huggingface`");
@@ -1 +1 @@
1
- {"version":3,"file":"hf.js","sourceRoot":"","sources":["../../src/llms/hf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAsB,MAAM,YAAY,CAAC;AAOrD,MAAM,OAAO,oBAAqB,SAAQ,GAAG;IAG3C,YACE,MAKC;QAED,KAAK,CACH,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,KAAK,CACd,CAAC;QAfJ;;;;mBAAQ,MAAM;WAAC;QAgBb,IAAI,CAAC,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;IAC3C,CAAC;IAED,QAAQ;QACN,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAc,EAAE,KAAgB;QAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,EAAE,EAAE;YAC7C,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;SACH;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,oBAAoB,CAAC,OAAO,EAAE,CAAC;QAC7D,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;QACrE,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,cAAc,CAAC;YAClC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO;QAGlB,IAAI;YACF,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;YAC7D,OAAO,EAAE,WAAW,EAAE,CAAC;SACxB;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;SACH;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"hf.js","sourceRoot":"","sources":["../../src/llms/hf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAsB,MAAM,YAAY,CAAC;AAwBrD,MAAM,OAAO,oBAAqB,SAAQ,GAAG;IAa3C,YACE,MAKC;QAED,KAAK,CACH,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,KAAK,CACd,CAAC;QAzBJ;;;;mBAAQ,MAAM;WAAC;QAEf;;;;mBAAkC,SAAS;WAAC;QAE5C;;;;mBAAgC,SAAS;WAAC;QAE1C;;;;mBAA2B,SAAS;WAAC;QAErC;;;;mBAA2B,SAAS;WAAC;QAErC;;;;mBAAuC,SAAS;WAAC;QAgB/C,IAAI,CAAC,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,MAAM,EAAE,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC;QAC3D,IAAI,CAAC,SAAS,GAAG,MAAM,EAAE,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QACrD,IAAI,CAAC,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;QACtC,IAAI,CAAC,gBAAgB,GAAG,MAAM,EAAE,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC;IAC5E,CAAC;IAED,QAAQ;QACN,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAc,EAAE,KAAgB;QAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,EAAE,EAAE;YAC7C,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;SACH;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,oBAAoB,CAAC,OAAO,EAAE,CAAC;QAC7D,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;QACrE,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,cAAc,CAAC;YAClC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE;gBACV,sEAAsE;gBACtE,gBAAgB,EAAE,KAAK;gBACvB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,cAAc,EAAE,IAAI,CAAC,SAAS;gBAC9B,KAAK,EAAE,IAAI,CAAC,IAAI;gBAChB,KAAK,EAAE,IAAI,CAAC,IAAI;gBAChB,kBAAkB,EAAE,IAAI,CAAC,gBAAgB;aAC1C;YACD,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO;QAGlB,IAAI;YACF,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YAC/D,OAAO,EAAE,WAAW,EAAE,CAAC;SACxB;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;SACH;IACH,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { test } from "@jest/globals";
2
2
  import { HuggingFaceInference } from "../hf.js";
3
3
  test("Test HuggingFace", async () => {
4
- const model = new HuggingFaceInference();
4
+ const model = new HuggingFaceInference({ temperature: 0.1, topP: 0.5 });
5
5
  const res = await model.call("1 + 1 =");
6
6
  console.log(res);
7
7
  }, 50000);
@@ -1 +1 @@
1
- {"version":3,"file":"huggingface_hub.int.test.js","sourceRoot":"","sources":["../../../src/llms/tests/huggingface_hub.int.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,IAAI,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;IAClC,MAAM,KAAK,GAAG,IAAI,oBAAoB,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"huggingface_hub.int.test.js","sourceRoot":"","sources":["../../../src/llms/tests/huggingface_hub.int.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,IAAI,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;IAClC,MAAM,KAAK,GAAG,IAAI,oBAAoB,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;IACxE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC,EAAE,KAAK,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "langchain",
3
- "version": "0.0.21",
3
+ "version": "0.0.22",
4
4
  "description": "Typescript bindings for langchain",
5
5
  "type": "module",
6
6
  "main": "./index.js",
@@ -60,6 +60,7 @@
60
60
  "@babel/core": "^7.20.12",
61
61
  "@babel/preset-env": "^7.20.2",
62
62
  "@dqbd/tiktoken": "^0.4.0",
63
+ "@huggingface/inference": "^1.5.1",
63
64
  "@jest/globals": "^29.4.2",
64
65
  "@pinecone-database/pinecone": "^0.0.8",
65
66
  "@tsconfig/recommended": "^1.0.2",
@@ -78,7 +79,6 @@
78
79
  "eslint-plugin-import": "^2.27.5",
79
80
  "eslint-plugin-prettier": "^4.2.1",
80
81
  "hnswlib-node": "^1.3.0",
81
- "huggingface": "^1.4.0",
82
82
  "husky": "^8.0.3",
83
83
  "jest": "^29.4.2",
84
84
  "lint-staged": "^13.1.1",
@@ -93,12 +93,12 @@
93
93
  },
94
94
  "peerDependencies": {
95
95
  "@dqbd/tiktoken": "^0.4.0",
96
+ "@huggingface/inference": "^1.5.1",
96
97
  "@pinecone-database/pinecone": "^0.0.8",
97
98
  "cheerio": "^1.0.0-rc.12",
98
99
  "chromadb": "^1.3.0",
99
100
  "cohere-ai": "^5.0.2",
100
101
  "hnswlib-node": "^1.3.0",
101
- "huggingface": "^1.4.0",
102
102
  "serpapi": "^1.1.1",
103
103
  "srt-parser-2": "^1.2.2"
104
104
  },
@@ -106,6 +106,9 @@
106
106
  "@dqbd/tiktoken": {
107
107
  "optional": true
108
108
  },
109
+ "@huggingface/inference": {
110
+ "optional": true
111
+ },
109
112
  "@pinecone-database/pinecone": {
110
113
  "optional": true
111
114
  },
@@ -141,7 +144,6 @@
141
144
  "p-queue": "^7.3.4",
142
145
  "pdf-parse": "^1.1.1",
143
146
  "sqlite3": "^5.1.4",
144
- "unfetch": "^5.0.0",
145
147
  "uuid": "^9.0.0",
146
148
  "yaml": "^2.2.1"
147
149
  },