@luanpoppe/ai 1.0.10 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +33 -15
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +28 -12
- package/dist/index.js.map +1 -1
- package/dist/langchain/audio-transcription.d.ts +1 -1
- package/dist/langchain/audio-transcription.d.ts.map +1 -1
- package/dist/langchain/audio-transcription.js +3 -3
- package/dist/langchain/audio-transcription.js.map +1 -1
- package/dist/langchain/messages.d.ts +1 -1
- package/dist/langchain/messages.d.ts.map +1 -1
- package/dist/langchain/messages.js +4 -4
- package/dist/langchain/messages.js.map +1 -1
- package/dist/langchain/models.d.ts +2 -5
- package/dist/langchain/models.d.ts.map +1 -1
- package/dist/langchain/models.js +4 -4
- package/dist/langchain/models.js.map +1 -1
- package/dist/langchain/tools.d.ts +1 -1
- package/dist/langchain/tools.d.ts.map +1 -1
- package/dist/langchain/tools.js +3 -3
- package/dist/langchain/tools.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +50 -25
- package/src/langchain/audio-transcription.ts +1 -1
- package/src/langchain/messages.ts +7 -8
- package/src/langchain/models.ts +3 -3
- package/src/langchain/tools.ts +1 -1
- package/tests/e2e/@fixtures/audio-teste-saudacao.mp3 +0 -0
- package/tests/e2e/ai-audio.test.ts +210 -0
- package/tests/e2e/{langchain.test.ts → ai.test.ts} +189 -254
- package/tests/unit/index.test.ts +77 -57
- package/tests/unit/langchain/audio-transcription.test.ts +16 -16
- package/tests/unit/langchain/messages.test.ts +15 -15
- package/tests/unit/langchain/models.test.ts +14 -14
- package/tests/unit/langchain/tools.test.ts +12 -10
package/dist/index.d.ts
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AIModels, LLMModelConfig } from "./langchain/models";
|
|
2
2
|
import { AIModelNames } from "./@types/model-names";
|
|
3
3
|
import z from "zod";
|
|
4
4
|
import { MessageInput } from "./langchain/messages";
|
|
5
5
|
import { AgentMiddleware, BaseMessage, createAgent } from "langchain";
|
|
6
6
|
import { ClientTool, ServerTool } from "@langchain/core/tools";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
type
|
|
7
|
+
import { AIMessages } from "./langchain/messages";
|
|
8
|
+
import { AITools } from "./langchain/tools";
|
|
9
|
+
type AIConstructor = {
|
|
10
10
|
googleGeminiToken?: string;
|
|
11
11
|
openAIApiKey?: string;
|
|
12
12
|
openRouterApiKey?: string;
|
|
13
13
|
};
|
|
14
|
-
export type
|
|
14
|
+
export type AICallParams = {
|
|
15
15
|
agent?: {
|
|
16
16
|
middleware?: AgentMiddleware[];
|
|
17
17
|
tools?: (ServerTool | ClientTool)[];
|
|
@@ -22,38 +22,56 @@ export type LangchainCallParams = {
|
|
|
22
22
|
systemPrompt?: string;
|
|
23
23
|
maxRetries?: number;
|
|
24
24
|
};
|
|
25
|
-
export type
|
|
25
|
+
export type AICallReturn = Promise<{
|
|
26
26
|
text: string;
|
|
27
27
|
messages: BaseMessage[];
|
|
28
28
|
}>;
|
|
29
|
-
export type
|
|
29
|
+
export type AICallStructuredOutputParams<T extends z.ZodSchema> = AICallParams & {
|
|
30
30
|
outputSchema: T;
|
|
31
31
|
};
|
|
32
|
-
export type
|
|
32
|
+
export type AICallStructuredOutputReturn<T> = Promise<{
|
|
33
33
|
response: z.infer<T>;
|
|
34
34
|
}>;
|
|
35
|
-
export declare class
|
|
35
|
+
export declare class AI {
|
|
36
36
|
private tokens;
|
|
37
|
-
constructor(tokens:
|
|
38
|
-
call(params:
|
|
39
|
-
callStructuredOutput<T extends z.ZodSchema>(params:
|
|
37
|
+
constructor(tokens: AIConstructor);
|
|
38
|
+
call(params: AICallParams): AICallReturn;
|
|
39
|
+
callStructuredOutput<T extends z.ZodSchema>(params: AICallStructuredOutputParams<T>): AICallStructuredOutputReturn<typeof params.outputSchema>;
|
|
40
40
|
/**
|
|
41
41
|
* Normaliza schemas Zod para compatibilidade com OpenAI/OpenRouter
|
|
42
42
|
* OpenAI exige que todos os campos em properties estejam no array required
|
|
43
43
|
* quando usa response_format: 'extract'
|
|
44
44
|
*/
|
|
45
45
|
private normalizeSchemaForOpenAI;
|
|
46
|
-
getRawAgent(params:
|
|
46
|
+
getRawAgent(params: AICallParams, outputSchema?: z.ZodSchema | undefined): {
|
|
47
47
|
agent: ReturnType<typeof createAgent>;
|
|
48
48
|
};
|
|
49
49
|
private getModel;
|
|
50
50
|
private standardAgent;
|
|
51
51
|
private standardMiddlewares;
|
|
52
52
|
}
|
|
53
|
-
export {
|
|
54
|
-
export {
|
|
53
|
+
export { AIModels, AIMessages, AITools };
|
|
54
|
+
export { AIAudioTranscription } from "./langchain/audio-transcription";
|
|
55
55
|
export { AudioUtils } from "./utils/audio-utils";
|
|
56
56
|
export type { AudioBuffer, AudioMimeType } from "./@types/audio";
|
|
57
57
|
export type { AudioContentBlock, HumanMessageWithAudioOptions, } from "./langchain/messages";
|
|
58
58
|
export type { WhisperModel, WhisperTranscriptionOptions, } from "./langchain/audio-transcription";
|
|
59
|
+
/** @deprecated Use AI instead. Will be removed in 2.0.0 */
|
|
60
|
+
export { AI as Langchain };
|
|
61
|
+
/** @deprecated Use AICallParams instead. Will be removed in 2.0.0 */
|
|
62
|
+
export type LangchainCallParams = AICallParams;
|
|
63
|
+
/** @deprecated Use AICallReturn instead. Will be removed in 2.0.0 */
|
|
64
|
+
export type LangchainCallReturn = AICallReturn;
|
|
65
|
+
/** @deprecated Use AICallStructuredOutputParams instead. Will be removed in 2.0.0 */
|
|
66
|
+
export type LangchainCallStructuredOutputParams<T extends z.ZodSchema> = AICallStructuredOutputParams<T>;
|
|
67
|
+
/** @deprecated Use AICallStructuredOutputReturn instead. Will be removed in 2.0.0 */
|
|
68
|
+
export type LangchainCallStructuredOutputReturn<T> = AICallStructuredOutputReturn<T>;
|
|
69
|
+
/** @deprecated Use AIModels instead. Will be removed in 2.0.0 */
|
|
70
|
+
export { AIModels as LangchainModels } from "./langchain/models";
|
|
71
|
+
/** @deprecated Use AIMessages instead. Will be removed in 2.0.0 */
|
|
72
|
+
export { AIMessages as LangchainMessages } from "./langchain/messages";
|
|
73
|
+
/** @deprecated Use AITools instead. Will be removed in 2.0.0 */
|
|
74
|
+
export { AITools as LangchainTools } from "./langchain/tools";
|
|
75
|
+
/** @deprecated Use AIAudioTranscription instead. Will be removed in 2.0.0 */
|
|
76
|
+
export { AIAudioTranscription as LangchainAudioTranscription } from "./langchain/audio-transcription";
|
|
59
77
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -3,16 +3,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.AudioUtils = exports.
|
|
6
|
+
exports.LangchainAudioTranscription = exports.LangchainTools = exports.LangchainMessages = exports.LangchainModels = exports.Langchain = exports.AudioUtils = exports.AIAudioTranscription = exports.AITools = exports.AIMessages = exports.AIModels = exports.AI = void 0;
|
|
7
7
|
const models_1 = require("./langchain/models");
|
|
8
|
-
Object.defineProperty(exports, "
|
|
8
|
+
Object.defineProperty(exports, "AIModels", { enumerable: true, get: function () { return models_1.AIModels; } });
|
|
9
9
|
const zod_1 = __importDefault(require("zod"));
|
|
10
10
|
const langchain_1 = require("langchain");
|
|
11
11
|
const messages_1 = require("./langchain/messages");
|
|
12
|
-
Object.defineProperty(exports, "
|
|
12
|
+
Object.defineProperty(exports, "AIMessages", { enumerable: true, get: function () { return messages_1.AIMessages; } });
|
|
13
13
|
const tools_1 = require("./langchain/tools");
|
|
14
|
-
Object.defineProperty(exports, "
|
|
15
|
-
class
|
|
14
|
+
Object.defineProperty(exports, "AITools", { enumerable: true, get: function () { return tools_1.AITools; } });
|
|
15
|
+
class AI {
|
|
16
16
|
tokens;
|
|
17
17
|
constructor(tokens) {
|
|
18
18
|
this.tokens = tokens;
|
|
@@ -23,9 +23,12 @@ class Langchain {
|
|
|
23
23
|
...this.standardAgent(params),
|
|
24
24
|
});
|
|
25
25
|
const response = await agent.invoke({ messages });
|
|
26
|
+
const rawContent = response.messages.at(-1)?.content;
|
|
27
|
+
const text = typeof rawContent === "string" && rawContent.trim()
|
|
28
|
+
? rawContent
|
|
29
|
+
: "Empty response from the model";
|
|
26
30
|
return {
|
|
27
|
-
text
|
|
28
|
-
"Empty response from the model",
|
|
31
|
+
text,
|
|
29
32
|
messages: response.messages,
|
|
30
33
|
};
|
|
31
34
|
}
|
|
@@ -92,15 +95,15 @@ class Langchain {
|
|
|
92
95
|
};
|
|
93
96
|
if (aiModel.startsWith("gpt")) {
|
|
94
97
|
config.apiKey = this.tokens.openAIApiKey;
|
|
95
|
-
return models_1.
|
|
98
|
+
return models_1.AIModels.gpt(config);
|
|
96
99
|
}
|
|
97
100
|
if (aiModel.startsWith("gemini")) {
|
|
98
101
|
config.apiKey = this.tokens.googleGeminiToken;
|
|
99
|
-
return models_1.
|
|
102
|
+
return models_1.AIModels.gemini(config);
|
|
100
103
|
}
|
|
101
104
|
if (aiModel.startsWith("openrouter/")) {
|
|
102
105
|
const modelName = aiModel.replace(/^openrouter\//, "");
|
|
103
|
-
return models_1.
|
|
106
|
+
return models_1.AIModels.openrouter({
|
|
104
107
|
...config,
|
|
105
108
|
model: modelName,
|
|
106
109
|
apiKey: this.tokens.openRouterApiKey,
|
|
@@ -133,9 +136,22 @@ class Langchain {
|
|
|
133
136
|
];
|
|
134
137
|
}
|
|
135
138
|
}
|
|
136
|
-
exports.
|
|
139
|
+
exports.AI = AI;
|
|
140
|
+
exports.Langchain = AI;
|
|
137
141
|
var audio_transcription_1 = require("./langchain/audio-transcription");
|
|
138
|
-
Object.defineProperty(exports, "
|
|
142
|
+
Object.defineProperty(exports, "AIAudioTranscription", { enumerable: true, get: function () { return audio_transcription_1.AIAudioTranscription; } });
|
|
139
143
|
var audio_utils_1 = require("./utils/audio-utils");
|
|
140
144
|
Object.defineProperty(exports, "AudioUtils", { enumerable: true, get: function () { return audio_utils_1.AudioUtils; } });
|
|
145
|
+
/** @deprecated Use AIModels instead. Will be removed in 2.0.0 */
|
|
146
|
+
var models_2 = require("./langchain/models");
|
|
147
|
+
Object.defineProperty(exports, "LangchainModels", { enumerable: true, get: function () { return models_2.AIModels; } });
|
|
148
|
+
/** @deprecated Use AIMessages instead. Will be removed in 2.0.0 */
|
|
149
|
+
var messages_2 = require("./langchain/messages");
|
|
150
|
+
Object.defineProperty(exports, "LangchainMessages", { enumerable: true, get: function () { return messages_2.AIMessages; } });
|
|
151
|
+
/** @deprecated Use AITools instead. Will be removed in 2.0.0 */
|
|
152
|
+
var tools_2 = require("./langchain/tools");
|
|
153
|
+
Object.defineProperty(exports, "LangchainTools", { enumerable: true, get: function () { return tools_2.AITools; } });
|
|
154
|
+
/** @deprecated Use AIAudioTranscription instead. Will be removed in 2.0.0 */
|
|
155
|
+
var audio_transcription_2 = require("./langchain/audio-transcription");
|
|
156
|
+
Object.defineProperty(exports, "LangchainAudioTranscription", { enumerable: true, get: function () { return audio_transcription_2.AIAudioTranscription; } });
|
|
141
157
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ export type WhisperTranscriptionOptions = {
|
|
|
12
12
|
/** Formato do áudio: extensão ("mp3", "wav", "webm") ou MIME type ("audio/wav", "audio/webm") */
|
|
13
13
|
format?: string | AudioMimeType;
|
|
14
14
|
};
|
|
15
|
-
export declare class
|
|
15
|
+
export declare class AIAudioTranscription {
|
|
16
16
|
static transcribeWithWhisper(audioBuffer: AudioBuffer, options?: WhisperTranscriptionOptions, openAIApiKey?: string): Promise<string>;
|
|
17
17
|
static transcribeFileWithWhisper(filePath: string, options?: WhisperTranscriptionOptions, openAIApiKey?: string): Promise<string>;
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audio-transcription.d.ts","sourceRoot":"","sources":["../../src/langchain/audio-transcription.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGlE,wEAAwE;AACxE,MAAM,MAAM,YAAY,GACpB,WAAW,GACX,mBAAmB,GACnB,wBAAwB,GACxB,mCAAmC,GACnC,2BAA2B,CAAC;AAEhC,MAAM,MAAM,2BAA2B,GAAG;IACxC,kHAAkH;IAClH,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,cAAc,GAAG,KAAK,CAAC;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAChD,iGAAiG;IACjG,MAAM,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;CACjC,CAAC;AAgBF,qBAAa,
|
|
1
|
+
{"version":3,"file":"audio-transcription.d.ts","sourceRoot":"","sources":["../../src/langchain/audio-transcription.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGlE,wEAAwE;AACxE,MAAM,MAAM,YAAY,GACpB,WAAW,GACX,mBAAmB,GACnB,wBAAwB,GACxB,mCAAmC,GACnC,2BAA2B,CAAC;AAEhC,MAAM,MAAM,2BAA2B,GAAG;IACxC,kHAAkH;IAClH,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,cAAc,GAAG,KAAK,CAAC;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAChD,iGAAiG;IACjG,MAAM,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;CACjC,CAAC;AAgBF,qBAAa,oBAAoB;WAClB,qBAAqB,CAChC,WAAW,EAAE,WAAW,EACxB,OAAO,GAAE,2BAAgC,EACzC,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC;WAwCL,yBAAyB,CACpC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,2BAAgC,EACzC,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC;CAcnB"}
|
|
@@ -36,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
36
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.
|
|
39
|
+
exports.AIAudioTranscription = void 0;
|
|
40
40
|
const fs = __importStar(require("fs"));
|
|
41
41
|
const path = __importStar(require("path"));
|
|
42
42
|
const openai_1 = __importDefault(require("openai"));
|
|
@@ -57,7 +57,7 @@ function toBuffer(audioBuffer) {
|
|
|
57
57
|
return Buffer.from(audioBuffer);
|
|
58
58
|
return Buffer.from(audioBuffer);
|
|
59
59
|
}
|
|
60
|
-
class
|
|
60
|
+
class AIAudioTranscription {
|
|
61
61
|
static async transcribeWithWhisper(audioBuffer, options = {}, openAIApiKey) {
|
|
62
62
|
if (openAIApiKey) {
|
|
63
63
|
process.env.OPENAI_API_KEY = openAIApiKey;
|
|
@@ -97,5 +97,5 @@ class LangchainAudioTranscription {
|
|
|
97
97
|
return this.transcribeWithWhisper(audioBuffer, { ...options, format }, openAIApiKey);
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
|
-
exports.
|
|
100
|
+
exports.AIAudioTranscription = AIAudioTranscription;
|
|
101
101
|
//# sourceMappingURL=audio-transcription.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audio-transcription.js","sourceRoot":"","sources":["../../src/langchain/audio-transcription.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAC7B,oDAA4B;AAC5B,mCAAgC;AAEhC,2CAAoD;AAsBpD,SAAS,YAAY,CAAC,MAA+B;IACnD,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,OAAO,yBAAiB,CAAC,MAAuB,CAAC,IAAI,KAAK,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,QAAQ,CAAC,WAAwB;IACxC,IAAI,WAAW,YAAY,MAAM;QAAE,OAAO,WAAW,CAAC;IACtD,IAAI,WAAW,YAAY,WAAW;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxE,OAAO,MAAM,CAAC,IAAI,CAAC,WAAyB,CAAC,CAAC;AAChD,CAAC;AAED,MAAa,
|
|
1
|
+
{"version":3,"file":"audio-transcription.js","sourceRoot":"","sources":["../../src/langchain/audio-transcription.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ export type HumanMessageWithAudioOptions = {
|
|
|
18
18
|
provider?: "openai" | "gemini" | "auto";
|
|
19
19
|
openAIApiKey?: string;
|
|
20
20
|
};
|
|
21
|
-
export declare class
|
|
21
|
+
export declare class AIMessages {
|
|
22
22
|
static system(message: string): SystemMessage;
|
|
23
23
|
static human(message: string): HumanMessage;
|
|
24
24
|
static humanAudio(options: HumanMessageWithAudioOptions): Promise<HumanMessage>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/langchain/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGlE,MAAM,MAAM,YAAY,GAAG,aAAa,GAAG,YAAY,GAAG,SAAS,CAAC;AAEpE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,QAAQ,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,aAAa,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,KAAK,EAAE;QACL,MAAM,EAAE,WAAW,CAAC;QACpB,QAAQ,CAAC,EAAE,aAAa,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,qBAAa,
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/langchain/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGlE,MAAM,MAAM,YAAY,GAAG,aAAa,GAAG,YAAY,GAAG,SAAS,CAAC;AAEpE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,QAAQ,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,aAAa,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,KAAK,EAAE;QACL,MAAM,EAAE,WAAW,CAAC;QACpB,QAAQ,CAAC,EAAE,aAAa,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,qBAAa,UAAU;IACrB,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;IAI7C,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY;WAI9B,UAAU,CACrB,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,YAAY,CAAC;IAcxB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS;mBAIhB,2BAA2B;mBAkD3B,kBAAkB;CA0CxC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.AIMessages = void 0;
|
|
4
4
|
const langchain_1 = require("langchain");
|
|
5
5
|
const audio_utils_1 = require("../utils/audio-utils");
|
|
6
6
|
const audio_transcription_1 = require("./audio-transcription");
|
|
7
|
-
class
|
|
7
|
+
class AIMessages {
|
|
8
8
|
static system(message) {
|
|
9
9
|
return new langchain_1.SystemMessage(message);
|
|
10
10
|
}
|
|
@@ -59,7 +59,7 @@ class LangchainMessages {
|
|
|
59
59
|
const transcriptionOptions = mimeType
|
|
60
60
|
? { format: mimeType }
|
|
61
61
|
: { language: "pt" };
|
|
62
|
-
const transcribedText = await audio_transcription_1.
|
|
62
|
+
const transcribedText = await audio_transcription_1.AIAudioTranscription.transcribeWithWhisper(audioBuffer, transcriptionOptions, openAIApiKey);
|
|
63
63
|
// Combina o texto original (se fornecido) com a transcrição
|
|
64
64
|
const finalText = text
|
|
65
65
|
? `${text}\n\nÁudio transcrito: ${transcribedText}`
|
|
@@ -75,5 +75,5 @@ class LangchainMessages {
|
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
|
-
exports.
|
|
78
|
+
exports.AIMessages = AIMessages;
|
|
79
79
|
//# sourceMappingURL=messages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/langchain/messages.ts"],"names":[],"mappings":";;;AAAA,yCAAmE;AACnE,sDAAkD;AAElD,+
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/langchain/messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,12 +6,9 @@ export type LLMModelConfig = {
|
|
|
6
6
|
maxTokens?: number | undefined;
|
|
7
7
|
temperature?: number | undefined;
|
|
8
8
|
};
|
|
9
|
-
export declare class
|
|
9
|
+
export declare class AIModels {
|
|
10
10
|
static gpt(params: LLMModelConfig): ChatOpenAI<import("@langchain/openai").ChatOpenAICallOptions>;
|
|
11
11
|
static gemini(params: LLMModelConfig): ChatGoogleGenerativeAI;
|
|
12
|
-
static openrouter(params: LLMModelConfig
|
|
13
|
-
httpReferer?: string;
|
|
14
|
-
title?: string;
|
|
15
|
-
}): ChatOpenAI<import("@langchain/openai").ChatOpenAICallOptions>;
|
|
12
|
+
static openrouter(params: LLMModelConfig): ChatOpenAI<import("@langchain/openai").ChatOpenAICallOptions>;
|
|
16
13
|
}
|
|
17
14
|
//# sourceMappingURL=models.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/langchain/models.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EAEvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAoB,MAAM,mBAAmB,CAAC;AAEjE,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC,CAAC;AAEF,qBAAa,
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/langchain/models.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EAEvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAoB,MAAM,mBAAmB,CAAC;AAEjE,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC,CAAC;AAEF,qBAAa,QAAQ;IACnB,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc;IAgBjC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc;IAmBpC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,cAAc;CAqBzC"}
|
package/dist/langchain/models.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.AIModels = void 0;
|
|
4
4
|
const google_genai_1 = require("@langchain/google-genai");
|
|
5
5
|
const openai_1 = require("@langchain/openai");
|
|
6
|
-
class
|
|
6
|
+
class AIModels {
|
|
7
7
|
static gpt(params) {
|
|
8
8
|
const { model, apiKey, maxTokens, temperature } = params;
|
|
9
9
|
if (!apiKey)
|
|
@@ -33,7 +33,7 @@ class LangchainModels {
|
|
|
33
33
|
return new google_genai_1.ChatGoogleGenerativeAI(options);
|
|
34
34
|
}
|
|
35
35
|
static openrouter(params) {
|
|
36
|
-
const { apiKey, maxTokens, model, temperature
|
|
36
|
+
const { apiKey, maxTokens, model, temperature } = params;
|
|
37
37
|
if (!apiKey)
|
|
38
38
|
throw new Error("OpenRouter API key is not passed in the model parameters");
|
|
39
39
|
const options = {
|
|
@@ -50,5 +50,5 @@ class LangchainModels {
|
|
|
50
50
|
return new openai_1.ChatOpenAI(options);
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
exports.
|
|
53
|
+
exports.AIModels = AIModels;
|
|
54
54
|
//# sourceMappingURL=models.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/langchain/models.ts"],"names":[],"mappings":";;;AAAA,0DAGiC;AACjC,8CAAiE;AASjE,MAAa,
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/langchain/models.ts"],"names":[],"mappings":";;;AAAA,0DAGiC;AACjC,8CAAiE;AASjE,MAAa,QAAQ;IACnB,MAAM,CAAC,GAAG,CAAC,MAAsB;QAC/B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QACzD,IAAI,CAAC,MAAM;YACT,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAE1E,MAAM,OAAO,GAAqB;YAChC,KAAK;YACL,MAAM;SACP,CAAC;QAEF,IAAI,SAAS;YAAE,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7C,IAAI,WAAW;YAAE,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;QAEnD,OAAO,IAAI,mBAAU,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,MAAsB;QAClC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAEzD,IAAI,CAAC,MAAM;YACT,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;QAEJ,MAAM,OAAO,GAAgC;YAC3C,KAAK;YACL,MAAM;SACP,CAAC;QAEF,IAAI,SAAS;YAAE,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;QACnD,IAAI,WAAW;YAAE,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;QAEnD,OAAO,IAAI,qCAAsB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAsB;QACtC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAEzD,IAAI,CAAC,MAAM;YACT,MAAM,IAAI,KAAK,CACb,0DAA0D,CAC3D,CAAC;QAEJ,MAAM,OAAO,GAAqB;YAChC,KAAK;YACL,MAAM;YACN,aAAa,EAAE;gBACb,OAAO,EAAE,8BAA8B;aACxC;SACF,CAAC;QAEF,IAAI,SAAS;YAAE,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7C,IAAI,WAAW;YAAE,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;QAEnD,OAAO,IAAI,mBAAU,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;CACF;AAzDD,4BAyDC"}
|
|
@@ -6,7 +6,7 @@ export type CreateToolParams = {
|
|
|
6
6
|
description: string;
|
|
7
7
|
schema: z.ZodSchema;
|
|
8
8
|
};
|
|
9
|
-
export declare class
|
|
9
|
+
export declare class AITools {
|
|
10
10
|
createTool(params: CreateToolParams): import("langchain").DynamicStructuredTool<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>, unknown, unknown, unknown, string>;
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/langchain/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,YAAY,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC;CACrB,CAAC;AAEF,qBAAa,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/langchain/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,YAAY,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC;CACrB,CAAC;AAEF,qBAAa,OAAO;IAClB,UAAU,CAAC,MAAM,EAAE,gBAAgB;CAUpC"}
|
package/dist/langchain/tools.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.AITools = void 0;
|
|
4
4
|
const langchain_1 = require("langchain");
|
|
5
|
-
class
|
|
5
|
+
class AITools {
|
|
6
6
|
createTool(params) {
|
|
7
7
|
const { toolFunction } = params;
|
|
8
8
|
const { name, description, schema } = params;
|
|
@@ -13,5 +13,5 @@ class LangchainTools {
|
|
|
13
13
|
});
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
-
exports.
|
|
16
|
+
exports.AITools = AITools;
|
|
17
17
|
//# sourceMappingURL=tools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/langchain/tools.ts"],"names":[],"mappings":";;;AAAA,yCAAiC;AAUjC,MAAa,
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/langchain/tools.ts"],"names":[],"mappings":";;;AAAA,yCAAiC;AAUjC,MAAa,OAAO;IAClB,UAAU,CAAC,MAAwB;QACjC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;QAChC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAE7C,OAAO,IAAA,gBAAI,EAAC,YAAY,EAAE;YACxB,IAAI;YACJ,WAAW;YACX,MAAM;SACP,CAAC,CAAC;IACL,CAAC;CACF;AAXD,0BAWC"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AIModels, LLMModelConfig } from "./langchain/models";
|
|
2
2
|
import { AIModelNames } from "./@types/model-names";
|
|
3
3
|
import z from "zod";
|
|
4
4
|
import { MessageInput } from "./langchain/messages";
|
|
@@ -10,16 +10,16 @@ import {
|
|
|
10
10
|
modelRetryMiddleware,
|
|
11
11
|
} from "langchain";
|
|
12
12
|
import { ClientTool, ServerTool } from "@langchain/core/tools";
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
13
|
+
import { AIMessages } from "./langchain/messages";
|
|
14
|
+
import { AITools } from "./langchain/tools";
|
|
15
15
|
|
|
16
|
-
type
|
|
16
|
+
type AIConstructor = {
|
|
17
17
|
googleGeminiToken?: string;
|
|
18
18
|
openAIApiKey?: string;
|
|
19
19
|
openRouterApiKey?: string;
|
|
20
20
|
};
|
|
21
21
|
|
|
22
|
-
export type
|
|
22
|
+
export type AICallParams = {
|
|
23
23
|
agent?: {
|
|
24
24
|
middleware?: AgentMiddleware[];
|
|
25
25
|
tools?: (ServerTool | ClientTool)[];
|
|
@@ -33,24 +33,24 @@ export type LangchainCallParams = {
|
|
|
33
33
|
maxRetries?: number;
|
|
34
34
|
};
|
|
35
35
|
|
|
36
|
-
export type
|
|
36
|
+
export type AICallReturn = Promise<{
|
|
37
37
|
text: string;
|
|
38
38
|
messages: BaseMessage[];
|
|
39
39
|
}>;
|
|
40
40
|
|
|
41
|
-
export type
|
|
42
|
-
|
|
41
|
+
export type AICallStructuredOutputParams<T extends z.ZodSchema> =
|
|
42
|
+
AICallParams & {
|
|
43
43
|
outputSchema: T;
|
|
44
44
|
};
|
|
45
45
|
|
|
46
|
-
export type
|
|
46
|
+
export type AICallStructuredOutputReturn<T> = Promise<{
|
|
47
47
|
response: z.infer<T>;
|
|
48
48
|
}>;
|
|
49
49
|
|
|
50
|
-
export class
|
|
51
|
-
constructor(private tokens:
|
|
50
|
+
export class AI {
|
|
51
|
+
constructor(private tokens: AIConstructor) {}
|
|
52
52
|
|
|
53
|
-
async call(params:
|
|
53
|
+
async call(params: AICallParams): AICallReturn {
|
|
54
54
|
const { messages } = params;
|
|
55
55
|
|
|
56
56
|
const agent = createAgent({
|
|
@@ -59,17 +59,20 @@ export class Langchain {
|
|
|
59
59
|
|
|
60
60
|
const response = await agent.invoke({ messages });
|
|
61
61
|
|
|
62
|
+
const rawContent = response.messages.at(-1)?.content as string | undefined;
|
|
63
|
+
const text =
|
|
64
|
+
typeof rawContent === "string" && rawContent.trim()
|
|
65
|
+
? rawContent
|
|
66
|
+
: "Empty response from the model";
|
|
62
67
|
return {
|
|
63
|
-
text
|
|
64
|
-
(response.messages.at(-1)?.content as string) ??
|
|
65
|
-
"Empty response from the model",
|
|
68
|
+
text,
|
|
66
69
|
messages: response.messages,
|
|
67
70
|
};
|
|
68
71
|
}
|
|
69
72
|
|
|
70
73
|
async callStructuredOutput<T extends z.ZodSchema>(
|
|
71
|
-
params:
|
|
72
|
-
):
|
|
74
|
+
params: AICallStructuredOutputParams<T>
|
|
75
|
+
): AICallStructuredOutputReturn<typeof params.outputSchema> {
|
|
73
76
|
const { outputSchema, messages, aiModel } = params;
|
|
74
77
|
|
|
75
78
|
// Normaliza o schema para compatibilidade com OpenAI/OpenRouter
|
|
@@ -135,7 +138,7 @@ export class Langchain {
|
|
|
135
138
|
}
|
|
136
139
|
|
|
137
140
|
getRawAgent(
|
|
138
|
-
params:
|
|
141
|
+
params: AICallParams,
|
|
139
142
|
outputSchema?: z.ZodSchema | undefined
|
|
140
143
|
): { agent: ReturnType<typeof createAgent> } {
|
|
141
144
|
const agent = createAgent({
|
|
@@ -146,7 +149,7 @@ export class Langchain {
|
|
|
146
149
|
return { agent };
|
|
147
150
|
}
|
|
148
151
|
|
|
149
|
-
private getModel(params:
|
|
152
|
+
private getModel(params: AICallParams) {
|
|
150
153
|
const { aiModel, modelConfig } = params;
|
|
151
154
|
|
|
152
155
|
const config: LLMModelConfig = {
|
|
@@ -158,18 +161,18 @@ export class Langchain {
|
|
|
158
161
|
if (aiModel.startsWith("gpt")) {
|
|
159
162
|
config.apiKey = this.tokens.openAIApiKey;
|
|
160
163
|
|
|
161
|
-
return
|
|
164
|
+
return AIModels.gpt(config);
|
|
162
165
|
}
|
|
163
166
|
|
|
164
167
|
if (aiModel.startsWith("gemini")) {
|
|
165
168
|
config.apiKey = this.tokens.googleGeminiToken;
|
|
166
169
|
|
|
167
|
-
return
|
|
170
|
+
return AIModels.gemini(config);
|
|
168
171
|
}
|
|
169
172
|
|
|
170
173
|
if (aiModel.startsWith("openrouter/")) {
|
|
171
174
|
const modelName = aiModel.replace(/^openrouter\//, "");
|
|
172
|
-
return
|
|
175
|
+
return AIModels.openrouter({
|
|
173
176
|
...config,
|
|
174
177
|
model: modelName,
|
|
175
178
|
apiKey: this.tokens.openRouterApiKey,
|
|
@@ -180,7 +183,7 @@ export class Langchain {
|
|
|
180
183
|
}
|
|
181
184
|
|
|
182
185
|
private standardAgent(
|
|
183
|
-
params:
|
|
186
|
+
params: AICallParams
|
|
184
187
|
): Parameters<typeof createAgent>[0] {
|
|
185
188
|
const { systemPrompt, maxRetries = 3 } = params;
|
|
186
189
|
|
|
@@ -209,8 +212,8 @@ export class Langchain {
|
|
|
209
212
|
}
|
|
210
213
|
}
|
|
211
214
|
|
|
212
|
-
export {
|
|
213
|
-
export {
|
|
215
|
+
export { AIModels, AIMessages, AITools };
|
|
216
|
+
export { AIAudioTranscription } from "./langchain/audio-transcription";
|
|
214
217
|
export { AudioUtils } from "./utils/audio-utils";
|
|
215
218
|
export type { AudioBuffer, AudioMimeType } from "./@types/audio";
|
|
216
219
|
export type {
|
|
@@ -221,3 +224,25 @@ export type {
|
|
|
221
224
|
WhisperModel,
|
|
222
225
|
WhisperTranscriptionOptions,
|
|
223
226
|
} from "./langchain/audio-transcription";
|
|
227
|
+
|
|
228
|
+
// Aliases para compatibilidade (deprecated - serão removidos em 2.0.0)
|
|
229
|
+
/** @deprecated Use AI instead. Will be removed in 2.0.0 */
|
|
230
|
+
export { AI as Langchain };
|
|
231
|
+
/** @deprecated Use AICallParams instead. Will be removed in 2.0.0 */
|
|
232
|
+
export type LangchainCallParams = AICallParams;
|
|
233
|
+
/** @deprecated Use AICallReturn instead. Will be removed in 2.0.0 */
|
|
234
|
+
export type LangchainCallReturn = AICallReturn;
|
|
235
|
+
/** @deprecated Use AICallStructuredOutputParams instead. Will be removed in 2.0.0 */
|
|
236
|
+
export type LangchainCallStructuredOutputParams<T extends z.ZodSchema> =
|
|
237
|
+
AICallStructuredOutputParams<T>;
|
|
238
|
+
/** @deprecated Use AICallStructuredOutputReturn instead. Will be removed in 2.0.0 */
|
|
239
|
+
export type LangchainCallStructuredOutputReturn<T> =
|
|
240
|
+
AICallStructuredOutputReturn<T>;
|
|
241
|
+
/** @deprecated Use AIModels instead. Will be removed in 2.0.0 */
|
|
242
|
+
export { AIModels as LangchainModels } from "./langchain/models";
|
|
243
|
+
/** @deprecated Use AIMessages instead. Will be removed in 2.0.0 */
|
|
244
|
+
export { AIMessages as LangchainMessages } from "./langchain/messages";
|
|
245
|
+
/** @deprecated Use AITools instead. Will be removed in 2.0.0 */
|
|
246
|
+
export { AITools as LangchainTools } from "./langchain/tools";
|
|
247
|
+
/** @deprecated Use AIAudioTranscription instead. Will be removed in 2.0.0 */
|
|
248
|
+
export { AIAudioTranscription as LangchainAudioTranscription } from "./langchain/audio-transcription";
|
|
@@ -39,7 +39,7 @@ function toBuffer(audioBuffer: AudioBuffer): Buffer {
|
|
|
39
39
|
return Buffer.from(audioBuffer as Uint8Array);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
export class
|
|
42
|
+
export class AIAudioTranscription {
|
|
43
43
|
static async transcribeWithWhisper(
|
|
44
44
|
audioBuffer: AudioBuffer,
|
|
45
45
|
options: WhisperTranscriptionOptions = {},
|