langchain 0.0.197-rc.0 → 0.0.197-rc.1

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 (202) hide show
  1. package/dist/agents/executor.cjs +351 -1
  2. package/dist/agents/executor.d.ts +61 -3
  3. package/dist/agents/executor.js +350 -1
  4. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.ts +1 -1
  5. package/dist/base_language/count_tokens.cjs +1 -1
  6. package/dist/base_language/count_tokens.d.ts +1 -1
  7. package/dist/base_language/count_tokens.js +1 -1
  8. package/dist/base_language/index.cjs +1 -1
  9. package/dist/base_language/index.d.ts +1 -1
  10. package/dist/base_language/index.js +1 -1
  11. package/dist/cache/base.cjs +1 -1
  12. package/dist/cache/base.d.ts +1 -1
  13. package/dist/cache/base.js +1 -1
  14. package/dist/cache/index.cjs +1 -1
  15. package/dist/cache/index.d.ts +1 -1
  16. package/dist/cache/index.js +1 -1
  17. package/dist/callbacks/base.cjs +1 -1
  18. package/dist/callbacks/base.d.ts +1 -1
  19. package/dist/callbacks/base.js +1 -1
  20. package/dist/callbacks/handlers/console.cjs +1 -1
  21. package/dist/callbacks/handlers/console.d.ts +1 -1
  22. package/dist/callbacks/handlers/console.js +1 -1
  23. package/dist/callbacks/handlers/initialize.cjs +1 -1
  24. package/dist/callbacks/handlers/initialize.d.ts +1 -1
  25. package/dist/callbacks/handlers/initialize.js +1 -1
  26. package/dist/callbacks/handlers/log_stream.cjs +1 -1
  27. package/dist/callbacks/handlers/log_stream.d.ts +1 -1
  28. package/dist/callbacks/handlers/log_stream.js +1 -1
  29. package/dist/callbacks/handlers/run_collector.cjs +1 -1
  30. package/dist/callbacks/handlers/run_collector.d.ts +1 -1
  31. package/dist/callbacks/handlers/run_collector.js +1 -1
  32. package/dist/callbacks/handlers/tracer.cjs +1 -1
  33. package/dist/callbacks/handlers/tracer.d.ts +1 -1
  34. package/dist/callbacks/handlers/tracer.js +1 -1
  35. package/dist/callbacks/handlers/tracer_langchain.cjs +1 -1
  36. package/dist/callbacks/handlers/tracer_langchain.d.ts +1 -1
  37. package/dist/callbacks/handlers/tracer_langchain.js +1 -1
  38. package/dist/callbacks/handlers/tracer_langchain_v1.cjs +1 -1
  39. package/dist/callbacks/handlers/tracer_langchain_v1.d.ts +1 -1
  40. package/dist/callbacks/handlers/tracer_langchain_v1.js +1 -1
  41. package/dist/callbacks/manager.cjs +1 -1
  42. package/dist/callbacks/manager.d.ts +1 -1
  43. package/dist/callbacks/manager.js +1 -1
  44. package/dist/callbacks/promises.cjs +1 -1
  45. package/dist/callbacks/promises.d.ts +1 -1
  46. package/dist/callbacks/promises.js +1 -1
  47. package/dist/chains/base.cjs +16 -0
  48. package/dist/chains/base.d.ts +2 -0
  49. package/dist/chains/base.js +16 -0
  50. package/dist/chains/openai_functions/structured_output.cjs +1 -1
  51. package/dist/chains/openai_functions/structured_output.d.ts +1 -1
  52. package/dist/chains/openai_functions/structured_output.js +1 -1
  53. package/dist/chains/openai_moderation.cjs +2 -2
  54. package/dist/chains/openai_moderation.d.ts +1 -1
  55. package/dist/chains/openai_moderation.js +1 -1
  56. package/dist/chat_models/base.cjs +1 -1
  57. package/dist/chat_models/base.d.ts +1 -1
  58. package/dist/chat_models/base.js +1 -1
  59. package/dist/chat_models/fireworks.d.ts +2 -2
  60. package/dist/chat_models/iflytek_xinghuo/common.d.ts +1 -1
  61. package/dist/chat_models/minimax.d.ts +2 -2
  62. package/dist/chat_models/openai.cjs +4 -698
  63. package/dist/chat_models/openai.d.ts +4 -137
  64. package/dist/chat_models/openai.js +2 -695
  65. package/dist/document.cjs +1 -1
  66. package/dist/document.d.ts +1 -1
  67. package/dist/document.js +1 -1
  68. package/dist/document_loaders/fs/openai_whisper_audio.cjs +2 -2
  69. package/dist/document_loaders/fs/openai_whisper_audio.d.ts +1 -1
  70. package/dist/document_loaders/fs/openai_whisper_audio.js +1 -1
  71. package/dist/document_loaders/web/azure_blob_storage_file.d.ts +1 -1
  72. package/dist/document_loaders/web/s3.d.ts +1 -1
  73. package/dist/embeddings/base.cjs +1 -1
  74. package/dist/embeddings/base.d.ts +1 -1
  75. package/dist/embeddings/base.js +1 -1
  76. package/dist/embeddings/cache_backed.cjs +1 -1
  77. package/dist/embeddings/cache_backed.js +1 -1
  78. package/dist/embeddings/openai.cjs +2 -240
  79. package/dist/embeddings/openai.d.ts +1 -82
  80. package/dist/embeddings/openai.js +1 -239
  81. package/dist/experimental/openai_assistant/index.cjs +3 -3
  82. package/dist/experimental/openai_assistant/index.d.ts +1 -1
  83. package/dist/experimental/openai_assistant/index.js +1 -1
  84. package/dist/experimental/openai_assistant/schema.d.ts +1 -1
  85. package/dist/experimental/openai_files/index.cjs +2 -2
  86. package/dist/experimental/openai_files/index.d.ts +1 -1
  87. package/dist/experimental/openai_files/index.js +1 -1
  88. package/dist/experimental/plan_and_execute/prompt.d.ts +1 -1
  89. package/dist/llms/base.cjs +1 -1
  90. package/dist/llms/base.d.ts +1 -1
  91. package/dist/llms/base.js +1 -1
  92. package/dist/llms/fireworks.d.ts +2 -2
  93. package/dist/llms/openai-chat.cjs +3 -445
  94. package/dist/llms/openai-chat.d.ts +4 -123
  95. package/dist/llms/openai-chat.js +2 -443
  96. package/dist/llms/openai.cjs +6 -530
  97. package/dist/llms/openai.d.ts +4 -123
  98. package/dist/llms/openai.js +2 -525
  99. package/dist/load/index.cjs +4 -2
  100. package/dist/load/index.d.ts +2 -2
  101. package/dist/load/index.js +4 -2
  102. package/dist/load/serializable.cjs +1 -1
  103. package/dist/load/serializable.d.ts +1 -1
  104. package/dist/load/serializable.js +1 -1
  105. package/dist/memory/base.cjs +2 -2
  106. package/dist/memory/base.d.ts +2 -2
  107. package/dist/memory/base.js +2 -2
  108. package/dist/output_parsers/list.cjs +1 -1
  109. package/dist/output_parsers/list.d.ts +1 -1
  110. package/dist/output_parsers/list.js +1 -1
  111. package/dist/output_parsers/openai_functions.cjs +1 -1
  112. package/dist/output_parsers/openai_functions.d.ts +1 -1
  113. package/dist/output_parsers/openai_functions.js +1 -1
  114. package/dist/output_parsers/structured.d.ts +1 -1
  115. package/dist/prompts/base.cjs +3 -3
  116. package/dist/prompts/base.d.ts +3 -3
  117. package/dist/prompts/base.js +3 -3
  118. package/dist/prompts/chat.cjs +2 -2
  119. package/dist/prompts/chat.d.ts +2 -2
  120. package/dist/prompts/chat.js +2 -2
  121. package/dist/prompts/few_shot.cjs +1 -1
  122. package/dist/prompts/few_shot.d.ts +1 -1
  123. package/dist/prompts/few_shot.js +1 -1
  124. package/dist/prompts/index.cjs +1 -1
  125. package/dist/prompts/index.d.ts +1 -1
  126. package/dist/prompts/index.js +1 -1
  127. package/dist/prompts/pipeline.cjs +1 -1
  128. package/dist/prompts/pipeline.d.ts +1 -1
  129. package/dist/prompts/pipeline.js +1 -1
  130. package/dist/prompts/prompt.cjs +1 -1
  131. package/dist/prompts/prompt.d.ts +1 -1
  132. package/dist/prompts/prompt.js +1 -1
  133. package/dist/prompts/selectors/LengthBasedExampleSelector.cjs +1 -1
  134. package/dist/prompts/selectors/LengthBasedExampleSelector.d.ts +1 -1
  135. package/dist/prompts/selectors/LengthBasedExampleSelector.js +1 -1
  136. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.cjs +1 -1
  137. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.d.ts +1 -1
  138. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.js +1 -1
  139. package/dist/prompts/selectors/conditional.cjs +1 -1
  140. package/dist/prompts/selectors/conditional.d.ts +1 -1
  141. package/dist/prompts/selectors/conditional.js +1 -1
  142. package/dist/prompts/serde.d.ts +1 -1
  143. package/dist/prompts/template.cjs +1 -1
  144. package/dist/prompts/template.d.ts +1 -1
  145. package/dist/prompts/template.js +1 -1
  146. package/dist/runnables/index.cjs +1 -1
  147. package/dist/runnables/index.d.ts +1 -1
  148. package/dist/runnables/index.js +1 -1
  149. package/dist/schema/document.cjs +1 -1
  150. package/dist/schema/document.d.ts +1 -1
  151. package/dist/schema/document.js +1 -1
  152. package/dist/schema/index.cjs +7 -7
  153. package/dist/schema/index.d.ts +11 -11
  154. package/dist/schema/index.js +7 -7
  155. package/dist/schema/output_parser.cjs +1 -1
  156. package/dist/schema/output_parser.d.ts +1 -1
  157. package/dist/schema/output_parser.js +1 -1
  158. package/dist/schema/retriever.cjs +1 -1
  159. package/dist/schema/retriever.d.ts +1 -1
  160. package/dist/schema/retriever.js +1 -1
  161. package/dist/schema/runnable/base.cjs +1 -1
  162. package/dist/schema/runnable/base.d.ts +1 -1
  163. package/dist/schema/runnable/base.js +1 -1
  164. package/dist/schema/runnable/branch.cjs +1 -1
  165. package/dist/schema/runnable/branch.d.ts +1 -1
  166. package/dist/schema/runnable/branch.js +1 -1
  167. package/dist/schema/runnable/config.d.ts +1 -1
  168. package/dist/schema/runnable/index.cjs +1 -1
  169. package/dist/schema/runnable/index.d.ts +1 -1
  170. package/dist/schema/runnable/index.js +1 -1
  171. package/dist/schema/runnable/passthrough.cjs +1 -1
  172. package/dist/schema/runnable/passthrough.d.ts +1 -1
  173. package/dist/schema/runnable/passthrough.js +1 -1
  174. package/dist/schema/runnable/router.cjs +1 -1
  175. package/dist/schema/runnable/router.d.ts +1 -1
  176. package/dist/schema/runnable/router.js +1 -1
  177. package/dist/schema/storage.cjs +1 -1
  178. package/dist/schema/storage.d.ts +1 -1
  179. package/dist/schema/storage.js +1 -1
  180. package/dist/tools/base.cjs +4 -108
  181. package/dist/tools/base.d.ts +1 -72
  182. package/dist/tools/base.js +1 -105
  183. package/dist/tools/bingserpapi.d.ts +1 -1
  184. package/dist/tools/convert_to_openai.cjs +4 -38
  185. package/dist/tools/convert_to_openai.d.ts +1 -11
  186. package/dist/tools/convert_to_openai.js +1 -35
  187. package/dist/tools/searchapi.d.ts +1 -1
  188. package/dist/tools/serpapi.d.ts +1 -1
  189. package/dist/tools/serper.d.ts +1 -1
  190. package/dist/types/openai-types.d.ts +1 -133
  191. package/dist/util/async_caller.cjs +1 -1
  192. package/dist/util/async_caller.d.ts +1 -1
  193. package/dist/util/async_caller.js +1 -1
  194. package/dist/util/openai.cjs +2 -18
  195. package/dist/util/openai.d.ts +1 -1
  196. package/dist/util/openai.js +1 -17
  197. package/dist/util/openapi.d.ts +2 -2
  198. package/dist/util/prompt-layer.d.ts +1 -1
  199. package/package.json +6 -5
  200. package/dist/util/openai-format-fndef.cjs +0 -81
  201. package/dist/util/openai-format-fndef.d.ts +0 -44
  202. package/dist/util/openai-format-fndef.js +0 -77
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "langchain",
3
- "version": "0.0.197-rc.0",
3
+ "version": "0.0.197-rc.1",
4
4
  "description": "Typescript bindings for langchain",
5
5
  "type": "module",
6
6
  "engines": {
@@ -866,6 +866,8 @@
866
866
  "@huggingface/inference": "^2.6.4",
867
867
  "@jest/globals": "^29.5.0",
868
868
  "@langchain/anthropic": "workspace:*",
869
+ "@langchain/core": "workspace:*",
870
+ "@langchain/openai": "workspace:*",
869
871
  "@mozilla/readability": "^0.4.4",
870
872
  "@notionhq/client": "^2.2.10",
871
873
  "@opensearch-project/opensearch": "^2.2.0",
@@ -943,7 +945,6 @@
943
945
  "jest": "^29.5.0",
944
946
  "jest-environment-node": "^29.6.4",
945
947
  "jsdom": "^22.1.0",
946
- "langchain-core": "workspace:*",
947
948
  "llmonitor": "^0.5.9",
948
949
  "lodash": "^4.17.21",
949
950
  "mammoth": "^1.5.1",
@@ -1379,18 +1380,18 @@
1379
1380
  }
1380
1381
  },
1381
1382
  "dependencies": {
1382
- "@langchain/anthropic": "^0.0.2",
1383
+ "@langchain/anthropic": "^0.0.3",
1384
+ "@langchain/core": "^0.0.1",
1385
+ "@langchain/openai": "^0.0.1",
1383
1386
  "binary-extensions": "^2.2.0",
1384
1387
  "expr-eval": "^2.0.2",
1385
1388
  "flat": "^5.0.2",
1386
1389
  "js-tiktoken": "^1.0.7",
1387
1390
  "js-yaml": "^4.1.0",
1388
1391
  "jsonpointer": "^5.0.1",
1389
- "langchain-core": "^0.0.4",
1390
1392
  "langchainhub": "~0.0.6",
1391
1393
  "langsmith": "~0.0.48",
1392
1394
  "ml-distance": "^4.0.0",
1393
- "openai": "^4.19.0",
1394
1395
  "openapi-types": "^12.1.3",
1395
1396
  "p-retry": "4",
1396
1397
  "uuid": "^9.0.0",
@@ -1,81 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatFunctionDefinitions = void 0;
4
- function isAnyOfProp(prop) {
5
- return (prop.anyOf !== undefined &&
6
- Array.isArray(prop.anyOf));
7
- }
8
- // When OpenAI use functions in the prompt, they format them as TypeScript definitions rather than OpenAPI JSON schemas.
9
- // This function converts the JSON schemas into TypeScript definitions.
10
- function formatFunctionDefinitions(functions) {
11
- const lines = ["namespace functions {", ""];
12
- for (const f of functions) {
13
- if (f.description) {
14
- lines.push(`// ${f.description}`);
15
- }
16
- if (Object.keys(f.parameters.properties ?? {}).length > 0) {
17
- lines.push(`type ${f.name} = (_: {`);
18
- lines.push(formatObjectProperties(f.parameters, 0));
19
- lines.push("}) => any;");
20
- }
21
- else {
22
- lines.push(`type ${f.name} = () => any;`);
23
- }
24
- lines.push("");
25
- }
26
- lines.push("} // namespace functions");
27
- return lines.join("\n");
28
- }
29
- exports.formatFunctionDefinitions = formatFunctionDefinitions;
30
- // Format just the properties of an object (not including the surrounding braces)
31
- function formatObjectProperties(obj, indent) {
32
- const lines = [];
33
- for (const [name, param] of Object.entries(obj.properties ?? {})) {
34
- if (param.description && indent < 2) {
35
- lines.push(`// ${param.description}`);
36
- }
37
- if (obj.required?.includes(name)) {
38
- lines.push(`${name}: ${formatType(param, indent)},`);
39
- }
40
- else {
41
- lines.push(`${name}?: ${formatType(param, indent)},`);
42
- }
43
- }
44
- return lines.map((line) => " ".repeat(indent) + line).join("\n");
45
- }
46
- // Format a single property type
47
- function formatType(param, indent) {
48
- if (isAnyOfProp(param)) {
49
- return param.anyOf.map((v) => formatType(v, indent)).join(" | ");
50
- }
51
- switch (param.type) {
52
- case "string":
53
- if (param.enum) {
54
- return param.enum.map((v) => `"${v}"`).join(" | ");
55
- }
56
- return "string";
57
- case "number":
58
- if (param.enum) {
59
- return param.enum.map((v) => `${v}`).join(" | ");
60
- }
61
- return "number";
62
- case "integer":
63
- if (param.enum) {
64
- return param.enum.map((v) => `${v}`).join(" | ");
65
- }
66
- return "number";
67
- case "boolean":
68
- return "boolean";
69
- case "null":
70
- return "null";
71
- case "object":
72
- return ["{", formatObjectProperties(param, indent + 2), "}"].join("\n");
73
- case "array":
74
- if (param.items) {
75
- return `${formatType(param.items, indent)}[]`;
76
- }
77
- return "any[]";
78
- default:
79
- return "";
80
- }
81
- }
@@ -1,44 +0,0 @@
1
- /**
2
- * Formatting function definitions for calculating openai function defination token usage.
3
- *
4
- * https://github.com/hmarr/openai-chat-tokens/blob/main/src/functions.ts
5
- * (c) 2023 Harry Marr
6
- * MIT license
7
- */
8
- import OpenAI from "openai";
9
- type OpenAIFunction = OpenAI.Chat.ChatCompletionCreateParams.Function;
10
- export interface FunctionDef extends Omit<OpenAIFunction, "parameters"> {
11
- name: string;
12
- description?: string;
13
- parameters: ObjectProp;
14
- }
15
- interface ObjectProp {
16
- type: "object";
17
- properties?: {
18
- [key: string]: Prop;
19
- };
20
- required?: string[];
21
- }
22
- interface AnyOfProp {
23
- anyOf: Prop[];
24
- }
25
- type Prop = {
26
- description?: string;
27
- } & (AnyOfProp | ObjectProp | {
28
- type: "string";
29
- enum?: string[];
30
- } | {
31
- type: "number" | "integer";
32
- minimum?: number;
33
- maximum?: number;
34
- enum?: number[];
35
- } | {
36
- type: "boolean";
37
- } | {
38
- type: "null";
39
- } | {
40
- type: "array";
41
- items?: Prop;
42
- });
43
- export declare function formatFunctionDefinitions(functions: FunctionDef[]): string;
44
- export {};
@@ -1,77 +0,0 @@
1
- function isAnyOfProp(prop) {
2
- return (prop.anyOf !== undefined &&
3
- Array.isArray(prop.anyOf));
4
- }
5
- // When OpenAI use functions in the prompt, they format them as TypeScript definitions rather than OpenAPI JSON schemas.
6
- // This function converts the JSON schemas into TypeScript definitions.
7
- export function formatFunctionDefinitions(functions) {
8
- const lines = ["namespace functions {", ""];
9
- for (const f of functions) {
10
- if (f.description) {
11
- lines.push(`// ${f.description}`);
12
- }
13
- if (Object.keys(f.parameters.properties ?? {}).length > 0) {
14
- lines.push(`type ${f.name} = (_: {`);
15
- lines.push(formatObjectProperties(f.parameters, 0));
16
- lines.push("}) => any;");
17
- }
18
- else {
19
- lines.push(`type ${f.name} = () => any;`);
20
- }
21
- lines.push("");
22
- }
23
- lines.push("} // namespace functions");
24
- return lines.join("\n");
25
- }
26
- // Format just the properties of an object (not including the surrounding braces)
27
- function formatObjectProperties(obj, indent) {
28
- const lines = [];
29
- for (const [name, param] of Object.entries(obj.properties ?? {})) {
30
- if (param.description && indent < 2) {
31
- lines.push(`// ${param.description}`);
32
- }
33
- if (obj.required?.includes(name)) {
34
- lines.push(`${name}: ${formatType(param, indent)},`);
35
- }
36
- else {
37
- lines.push(`${name}?: ${formatType(param, indent)},`);
38
- }
39
- }
40
- return lines.map((line) => " ".repeat(indent) + line).join("\n");
41
- }
42
- // Format a single property type
43
- function formatType(param, indent) {
44
- if (isAnyOfProp(param)) {
45
- return param.anyOf.map((v) => formatType(v, indent)).join(" | ");
46
- }
47
- switch (param.type) {
48
- case "string":
49
- if (param.enum) {
50
- return param.enum.map((v) => `"${v}"`).join(" | ");
51
- }
52
- return "string";
53
- case "number":
54
- if (param.enum) {
55
- return param.enum.map((v) => `${v}`).join(" | ");
56
- }
57
- return "number";
58
- case "integer":
59
- if (param.enum) {
60
- return param.enum.map((v) => `${v}`).join(" | ");
61
- }
62
- return "number";
63
- case "boolean":
64
- return "boolean";
65
- case "null":
66
- return "null";
67
- case "object":
68
- return ["{", formatObjectProperties(param, indent + 2), "}"].join("\n");
69
- case "array":
70
- if (param.items) {
71
- return `${formatType(param.items, indent)}[]`;
72
- }
73
- return "any[]";
74
- default:
75
- return "";
76
- }
77
- }