@effect/ai 0.8.0 → 0.8.2
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/AiTelemetry/package.json +6 -0
- package/Embeddings/package.json +6 -0
- package/dist/cjs/AiChat.js +90 -103
- package/dist/cjs/AiChat.js.map +1 -1
- package/dist/cjs/AiTelemetry.js +52 -0
- package/dist/cjs/AiTelemetry.js.map +1 -0
- package/dist/cjs/Completions.js +50 -46
- package/dist/cjs/Completions.js.map +1 -1
- package/dist/cjs/Embeddings.js +92 -0
- package/dist/cjs/Embeddings.js.map +1 -0
- package/dist/cjs/index.js +5 -1
- package/dist/dts/AiChat.d.ts +12 -1
- package/dist/dts/AiChat.d.ts.map +1 -1
- package/dist/dts/AiTelemetry.d.ts +205 -0
- package/dist/dts/AiTelemetry.d.ts.map +1 -0
- package/dist/dts/Completions.d.ts +29 -8
- package/dist/dts/Completions.d.ts.map +1 -1
- package/dist/dts/Embeddings.d.ts +59 -0
- package/dist/dts/Embeddings.d.ts.map +1 -0
- package/dist/dts/index.d.ts +8 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/esm/AiChat.js +90 -102
- package/dist/esm/AiChat.js.map +1 -1
- package/dist/esm/AiTelemetry.js +42 -0
- package/dist/esm/AiTelemetry.js.map +1 -0
- package/dist/esm/Completions.js +50 -46
- package/dist/esm/Completions.js.map +1 -1
- package/dist/esm/Embeddings.js +80 -0
- package/dist/esm/Embeddings.js.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -1
- package/package.json +20 -3
- package/src/AiChat.ts +160 -169
- package/src/AiTelemetry.ts +297 -0
- package/src/Completions.ts +140 -107
- package/src/Embeddings.ts +143 -0
- package/src/index.ts +10 -0
package/dist/cjs/AiChat.js
CHANGED
|
@@ -29,112 +29,99 @@ class AiChat extends /*#__PURE__*/Effect.Tag("@effect/ai/AiChat")() {}
|
|
|
29
29
|
* @category constructors
|
|
30
30
|
*/
|
|
31
31
|
exports.AiChat = AiChat;
|
|
32
|
-
const fromInput =
|
|
33
|
-
completions
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
}
|
|
54
|
-
send(input) {
|
|
55
|
-
const newParts = AiInput.make(input);
|
|
56
|
-
return Ref.get(this.historyRef).pipe(Effect.flatMap(parts => {
|
|
57
|
-
const allParts = Chunk.appendAll(parts, newParts);
|
|
58
|
-
return this.completions.create(allParts).pipe(Effect.tap(response => {
|
|
59
|
-
const responseParts = AiInput.make(response);
|
|
60
|
-
return Ref.set(this.historyRef, Chunk.appendAll(allParts, responseParts));
|
|
32
|
+
const fromInput = exports.fromInput = /*#__PURE__*/Effect.fnUntraced(function* (input) {
|
|
33
|
+
const completions = yield* _Completions.Completions;
|
|
34
|
+
const history = yield* Ref.make(AiInput.make(input));
|
|
35
|
+
const semaphore = yield* Effect.makeSemaphore(1);
|
|
36
|
+
return AiChat.of({
|
|
37
|
+
history: Ref.get(history),
|
|
38
|
+
export: Ref.get(history).pipe(Effect.flatMap(Schema.encode(AiInput.Schema)), Effect.orDie),
|
|
39
|
+
exportJson: Ref.get(history).pipe(Effect.flatMap(Schema.encode(AiInput.SchemaJson)), Effect.orDie),
|
|
40
|
+
send(input) {
|
|
41
|
+
const newParts = AiInput.make(input);
|
|
42
|
+
return Ref.get(history).pipe(Effect.flatMap(parts => {
|
|
43
|
+
const allParts = Chunk.appendAll(parts, newParts);
|
|
44
|
+
return completions.create(allParts).pipe(Effect.tap(response => {
|
|
45
|
+
const responseParts = AiInput.make(response);
|
|
46
|
+
return Ref.set(history, Chunk.appendAll(allParts, responseParts));
|
|
47
|
+
}));
|
|
48
|
+
}), semaphore.withPermits(1), Effect.withSpan("AiChat.send", {
|
|
49
|
+
attributes: {
|
|
50
|
+
input
|
|
51
|
+
},
|
|
52
|
+
captureStackTrace: false
|
|
61
53
|
}));
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
}), Stream.toChannel), parts => Effect.zipRight(Ref.set(this.historyRef, Chunk.appendAll(parts, AiInput.make(combined))), this.semaphore.release(1))));
|
|
76
|
-
}).pipe(Stream.withSpan("AiChat.stream", {
|
|
77
|
-
attributes: {
|
|
78
|
-
input
|
|
79
|
-
},
|
|
80
|
-
captureStackTrace: false
|
|
81
|
-
}));
|
|
82
|
-
}
|
|
83
|
-
structured(schema, input) {
|
|
84
|
-
const newParts = AiInput.make(input);
|
|
85
|
-
return Ref.get(this.historyRef).pipe(Effect.flatMap(parts => {
|
|
86
|
-
const allParts = Chunk.appendAll(parts, newParts);
|
|
87
|
-
return this.completions.structured({
|
|
88
|
-
input: allParts,
|
|
89
|
-
schema
|
|
90
|
-
}).pipe(Effect.flatMap(response => {
|
|
91
|
-
const responseParts = AiInput.make(response);
|
|
92
|
-
return Effect.as(Ref.set(this.historyRef, Chunk.appendAll(allParts, responseParts)), response.unsafeValue);
|
|
54
|
+
},
|
|
55
|
+
stream(input) {
|
|
56
|
+
return Stream.suspend(() => {
|
|
57
|
+
let combined = _AiResponse.AiResponse.empty;
|
|
58
|
+
return Stream.fromChannel(Channel.acquireUseRelease(semaphore.take(1).pipe(Effect.zipRight(Ref.get(history)), Effect.map(Chunk.appendAll(AiInput.make(input)))), parts => completions.stream(parts).pipe(Stream.map(chunk => {
|
|
59
|
+
combined = combined.concat(chunk);
|
|
60
|
+
return chunk;
|
|
61
|
+
}), Stream.toChannel), parts => Effect.zipRight(Ref.set(history, Chunk.appendAll(parts, AiInput.make(combined))), semaphore.release(1))));
|
|
62
|
+
}).pipe(Stream.withSpan("AiChat.stream", {
|
|
63
|
+
attributes: {
|
|
64
|
+
input
|
|
65
|
+
},
|
|
66
|
+
captureStackTrace: false
|
|
93
67
|
}));
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
68
|
+
},
|
|
69
|
+
structured(options) {
|
|
70
|
+
const newParts = AiInput.make(options.input);
|
|
71
|
+
return Ref.get(history).pipe(Effect.flatMap(parts => {
|
|
72
|
+
const allParts = Chunk.appendAll(parts, newParts);
|
|
73
|
+
return completions.structured({
|
|
74
|
+
...options,
|
|
75
|
+
input: allParts
|
|
76
|
+
}).pipe(Effect.flatMap(response => {
|
|
77
|
+
const responseParts = AiInput.make(response);
|
|
78
|
+
return Effect.as(Ref.set(history, Chunk.appendAll(allParts, responseParts)), response.unsafeValue);
|
|
79
|
+
}));
|
|
80
|
+
}), semaphore.withPermits(1), Effect.withSpan("AiChat.structured", {
|
|
81
|
+
attributes: {
|
|
82
|
+
input: options.input,
|
|
83
|
+
schema: "toolCallId" in options ? options.toolCallId : "_tag" in options.schema ? options.schema._tag : options.schema.identifier
|
|
84
|
+
},
|
|
85
|
+
captureStackTrace: false
|
|
112
86
|
}));
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
87
|
+
},
|
|
88
|
+
toolkit(options) {
|
|
89
|
+
const newParts = AiInput.make(options.input);
|
|
90
|
+
return Ref.get(history).pipe(Effect.flatMap(parts => {
|
|
91
|
+
const allParts = Chunk.appendAll(parts, newParts);
|
|
92
|
+
return completions.toolkit({
|
|
93
|
+
...options,
|
|
94
|
+
input: allParts
|
|
95
|
+
}).pipe(Effect.tap(response => {
|
|
96
|
+
const responseParts = AiInput.make(response);
|
|
97
|
+
return Ref.set(history, Chunk.appendAll(allParts, responseParts));
|
|
98
|
+
}));
|
|
99
|
+
}), semaphore.withPermits(1), Effect.withSpan("AiChat.toolkit", {
|
|
100
|
+
attributes: {
|
|
101
|
+
input: options.input
|
|
102
|
+
},
|
|
103
|
+
captureStackTrace: false
|
|
104
|
+
}));
|
|
105
|
+
},
|
|
106
|
+
toolkitStream(options) {
|
|
107
|
+
return Stream.suspend(() => {
|
|
108
|
+
let combined = _AiResponse.WithResolved.empty;
|
|
109
|
+
return Stream.fromChannel(Channel.acquireUseRelease(semaphore.take(1).pipe(Effect.zipRight(Ref.get(history)), Effect.map(Chunk.appendAll(AiInput.make(options.input)))), parts => completions.toolkitStream({
|
|
110
|
+
...options,
|
|
111
|
+
input: parts
|
|
112
|
+
}).pipe(Stream.map(chunk => {
|
|
113
|
+
combined = combined.concat(chunk);
|
|
114
|
+
return chunk;
|
|
115
|
+
}), Stream.toChannel), parts => Effect.zipRight(Ref.set(history, Chunk.appendAll(parts, AiInput.make(combined))), semaphore.release(1))));
|
|
116
|
+
}).pipe(Stream.withSpan("AiChat.toolkitStream", {
|
|
117
|
+
attributes: {
|
|
118
|
+
input: options.input
|
|
119
|
+
},
|
|
120
|
+
captureStackTrace: false
|
|
121
|
+
}));
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
});
|
|
138
125
|
/**
|
|
139
126
|
* @since 1.0.0
|
|
140
127
|
* @category constructors
|
package/dist/cjs/AiChat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AiChat.js","names":["Channel","_interopRequireWildcard","require","Chunk","Effect","Ref","Schema","Stream","AiInput","_AiResponse","_Completions","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","AiChat","Tag","exports","fromInput","
|
|
1
|
+
{"version":3,"file":"AiChat.js","names":["Channel","_interopRequireWildcard","require","Chunk","Effect","Ref","Schema","Stream","AiInput","_AiResponse","_Completions","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","AiChat","Tag","exports","fromInput","fnUntraced","input","completions","Completions","history","make","semaphore","makeSemaphore","of","export","pipe","flatMap","encode","orDie","exportJson","SchemaJson","send","newParts","parts","allParts","appendAll","create","tap","response","responseParts","withPermits","withSpan","attributes","captureStackTrace","stream","suspend","combined","AiResponse","empty","fromChannel","acquireUseRelease","take","zipRight","map","chunk","concat","toChannel","release","structured","options","as","unsafeValue","schema","toolCallId","_tag","identifier","toolkit","toolkitStream","WithResolved","fromExport","data","decodeUnknown","fromJson","decode"],"sources":["../../src/AiChat.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.addSpanAttributes = exports.addGenAIAnnotations = void 0;
|
|
7
|
+
var _Function = require("effect/Function");
|
|
8
|
+
var Predicate = _interopRequireWildcard(require("effect/Predicate"));
|
|
9
|
+
var String = _interopRequireWildcard(require("effect/String"));
|
|
10
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
11
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
|
+
/**
|
|
13
|
+
* @since 1.0.0
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @since 1.0.0
|
|
18
|
+
* @category utilities
|
|
19
|
+
*/
|
|
20
|
+
const addSpanAttributes = (keyPrefix, transformKey) => (span, attributes) => {
|
|
21
|
+
for (const [key, value] of Object.entries(attributes)) {
|
|
22
|
+
if (Predicate.isNotNullable(value)) {
|
|
23
|
+
span.attribute(`${keyPrefix}.${transformKey(key)}`, value);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
exports.addSpanAttributes = addSpanAttributes;
|
|
28
|
+
const addSpanBaseAttributes = /*#__PURE__*/addSpanAttributes("gen_ai", String.camelToSnake);
|
|
29
|
+
const addSpanOperationAttributes = /*#__PURE__*/addSpanAttributes("gen_ai.operation", String.camelToSnake);
|
|
30
|
+
const addSpanRequestAttributes = /*#__PURE__*/addSpanAttributes("gen_ai.request", String.camelToSnake);
|
|
31
|
+
const addSpanResponseAttributes = /*#__PURE__*/addSpanAttributes("gen_ai.response", String.camelToSnake);
|
|
32
|
+
const addSpanTokenAttributes = /*#__PURE__*/addSpanAttributes("gen_ai.token", String.camelToSnake);
|
|
33
|
+
const addSpanUsageAttributes = /*#__PURE__*/addSpanAttributes("gen_ai.usage", String.camelToSnake);
|
|
34
|
+
/**
|
|
35
|
+
* Applies the specified GenAI telemetry attributes to the provided `Span`.
|
|
36
|
+
*
|
|
37
|
+
* **NOTE**: This method will mutate the `Span` **in-place**.
|
|
38
|
+
*
|
|
39
|
+
* @since 1.0.0
|
|
40
|
+
* @since utilities
|
|
41
|
+
*/
|
|
42
|
+
const addGenAIAnnotations = exports.addGenAIAnnotations = /*#__PURE__*/(0, _Function.dual)(2, (span, options) => {
|
|
43
|
+
addSpanBaseAttributes(span, {
|
|
44
|
+
system: options.system
|
|
45
|
+
});
|
|
46
|
+
if (Predicate.isNotNullable(options.operation)) addSpanOperationAttributes(span, options.operation);
|
|
47
|
+
if (Predicate.isNotNullable(options.request)) addSpanRequestAttributes(span, options.request);
|
|
48
|
+
if (Predicate.isNotNullable(options.response)) addSpanResponseAttributes(span, options.response);
|
|
49
|
+
if (Predicate.isNotNullable(options.token)) addSpanTokenAttributes(span, options.token);
|
|
50
|
+
if (Predicate.isNotNullable(options.usage)) addSpanUsageAttributes(span, options.usage);
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=AiTelemetry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AiTelemetry.js","names":["_Function","require","Predicate","_interopRequireWildcard","String","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","addSpanAttributes","keyPrefix","transformKey","span","attributes","key","value","entries","isNotNullable","attribute","exports","addSpanBaseAttributes","camelToSnake","addSpanOperationAttributes","addSpanRequestAttributes","addSpanResponseAttributes","addSpanTokenAttributes","addSpanUsageAttributes","addGenAIAnnotations","dual","options","system","operation","request","response","token","usage"],"sources":["../../src/AiTelemetry.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/Completions.js
CHANGED
|
@@ -36,36 +36,43 @@ const constEmptyMap = /*#__PURE__*/new Map();
|
|
|
36
36
|
const make = options => Effect.map(Effect.serviceOption(AiInput.SystemInstruction), parentSystem => {
|
|
37
37
|
return Completions.of({
|
|
38
38
|
create(input) {
|
|
39
|
-
return Effect.
|
|
39
|
+
return Effect.useSpan("Completions.create", {
|
|
40
|
+
captureStackTrace: false
|
|
41
|
+
}, span => Effect.serviceOption(AiInput.SystemInstruction).pipe(Effect.flatMap(system => options.create({
|
|
40
42
|
input: AiInput.make(input),
|
|
41
43
|
system: Option.orElse(system, () => parentSystem),
|
|
42
44
|
tools: [],
|
|
43
|
-
required: false
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}));
|
|
45
|
+
required: false,
|
|
46
|
+
span
|
|
47
|
+
}))));
|
|
47
48
|
},
|
|
48
49
|
stream(input_) {
|
|
49
50
|
const input = AiInput.make(input_);
|
|
50
|
-
return Effect.
|
|
51
|
+
return Effect.makeSpanScoped("Completions.stream", {
|
|
52
|
+
captureStackTrace: false
|
|
53
|
+
}).pipe(Effect.zip(Effect.serviceOption(AiInput.SystemInstruction)), Effect.map(([span, system]) => options.stream({
|
|
51
54
|
input: input,
|
|
52
55
|
system: Option.orElse(system, () => parentSystem),
|
|
53
56
|
tools: [],
|
|
54
|
-
required: false
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}));
|
|
57
|
+
required: false,
|
|
58
|
+
span
|
|
59
|
+
})), Stream.unwrapScoped);
|
|
58
60
|
},
|
|
59
61
|
structured(opts) {
|
|
60
62
|
const input = AiInput.make(opts.input);
|
|
61
|
-
const
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
|
|
63
|
+
const decode = Schema.decodeUnknown(opts.schema);
|
|
64
|
+
const toolId = "toolCallId" in opts ? opts.toolCallId : "_tag" in opts.schema ? opts.schema._tag : opts.schema.identifier;
|
|
65
|
+
return Effect.useSpan("Completions.structured", {
|
|
66
|
+
attributes: {
|
|
67
|
+
toolId
|
|
68
|
+
},
|
|
69
|
+
captureStackTrace: false
|
|
70
|
+
}, span => Effect.serviceOption(AiInput.SystemInstruction).pipe(Effect.flatMap(system => options.create({
|
|
65
71
|
input: input,
|
|
66
72
|
system: Option.orElse(system, () => parentSystem),
|
|
67
|
-
tools: [convertTool(schema, true)],
|
|
68
|
-
required: true
|
|
73
|
+
tools: [convertTool(toolId, opts.schema, true)],
|
|
74
|
+
required: true,
|
|
75
|
+
span
|
|
69
76
|
})), Effect.flatMap(response => Chunk.findFirst(response.parts, part => part._tag === "ToolCall" && part.name === toolId).pipe(Option.match({
|
|
70
77
|
onNone: () => Effect.fail(new _AiError.AiError({
|
|
71
78
|
module: "Completions",
|
|
@@ -85,12 +92,7 @@ const make = options => Effect.map(Effect.serviceOption(AiInput.SystemInstructio
|
|
|
85
92
|
encoded: new Map([[toolCall.id, toolCall.params]])
|
|
86
93
|
}))
|
|
87
94
|
})
|
|
88
|
-
})
|
|
89
|
-
attributes: {
|
|
90
|
-
tool: toolId
|
|
91
|
-
},
|
|
92
|
-
captureStackTrace: false
|
|
93
|
-
}))));
|
|
95
|
+
})))));
|
|
94
96
|
},
|
|
95
97
|
toolkit({
|
|
96
98
|
concurrency,
|
|
@@ -101,25 +103,26 @@ const make = options => Effect.map(Effect.serviceOption(AiInput.SystemInstructio
|
|
|
101
103
|
const input = AiInput.make(inputInput);
|
|
102
104
|
const toolArr = [];
|
|
103
105
|
for (const [, tool] of tools.toolkit.tools) {
|
|
104
|
-
toolArr.push(convertTool(tool));
|
|
106
|
+
toolArr.push(convertTool(tool._tag, tool));
|
|
105
107
|
}
|
|
106
|
-
return Effect.
|
|
108
|
+
return Effect.useSpan("Completions.toolkit", {
|
|
109
|
+
attributes: {
|
|
110
|
+
concurrency,
|
|
111
|
+
required
|
|
112
|
+
},
|
|
113
|
+
captureStackTrace: false
|
|
114
|
+
}, span => Effect.serviceOption(AiInput.SystemInstruction).pipe(Effect.flatMap(system => options.create({
|
|
107
115
|
input: input,
|
|
108
116
|
system: Option.orElse(system, () => parentSystem),
|
|
109
117
|
tools: toolArr,
|
|
110
|
-
required: required
|
|
118
|
+
required: required,
|
|
119
|
+
span
|
|
111
120
|
})), Effect.flatMap(response => resolveParts({
|
|
112
121
|
response,
|
|
113
122
|
tools,
|
|
114
123
|
concurrency,
|
|
115
124
|
method: "toolkit"
|
|
116
|
-
}))
|
|
117
|
-
captureStackTrace: false,
|
|
118
|
-
attributes: {
|
|
119
|
-
concurrency,
|
|
120
|
-
required
|
|
121
|
-
}
|
|
122
|
-
}));
|
|
125
|
+
}))));
|
|
123
126
|
},
|
|
124
127
|
toolkitStream({
|
|
125
128
|
concurrency,
|
|
@@ -129,35 +132,36 @@ const make = options => Effect.map(Effect.serviceOption(AiInput.SystemInstructio
|
|
|
129
132
|
}) {
|
|
130
133
|
const toolArr = [];
|
|
131
134
|
for (const [, tool] of tools.toolkit.tools) {
|
|
132
|
-
toolArr.push(convertTool(tool));
|
|
135
|
+
toolArr.push(convertTool(tool._tag, tool));
|
|
133
136
|
}
|
|
134
|
-
return Effect.
|
|
137
|
+
return Effect.makeSpanScoped("Completions.stream", {
|
|
138
|
+
captureStackTrace: false,
|
|
139
|
+
attributes: {
|
|
140
|
+
required,
|
|
141
|
+
concurrency
|
|
142
|
+
}
|
|
143
|
+
}).pipe(Effect.zip(Effect.serviceOption(AiInput.SystemInstruction)), Effect.map(([span, system]) => options.stream({
|
|
135
144
|
input: AiInput.make(input),
|
|
136
145
|
system: Option.orElse(system, () => parentSystem),
|
|
137
146
|
tools: toolArr,
|
|
138
|
-
required: required
|
|
139
|
-
|
|
147
|
+
required: required,
|
|
148
|
+
span
|
|
149
|
+
})), Stream.unwrapScoped, Stream.mapEffect(chunk => resolveParts({
|
|
140
150
|
response: chunk,
|
|
141
151
|
tools,
|
|
142
152
|
concurrency,
|
|
143
153
|
method: "toolkitStream"
|
|
144
154
|
}), {
|
|
145
155
|
concurrency: "unbounded"
|
|
146
|
-
}), Stream.withSpan("Completions.toolkitStream", {
|
|
147
|
-
captureStackTrace: false,
|
|
148
|
-
attributes: {
|
|
149
|
-
concurrency,
|
|
150
|
-
required
|
|
151
|
-
}
|
|
152
156
|
}));
|
|
153
157
|
}
|
|
154
158
|
});
|
|
155
159
|
});
|
|
156
160
|
exports.make = make;
|
|
157
|
-
const convertTool = (
|
|
158
|
-
name
|
|
159
|
-
description: getDescription(
|
|
160
|
-
parameters: makeJsonSchema(
|
|
161
|
+
const convertTool = (name, schema, structured = false) => ({
|
|
162
|
+
name,
|
|
163
|
+
description: getDescription(schema.ast),
|
|
164
|
+
parameters: makeJsonSchema(schema.ast),
|
|
161
165
|
structured
|
|
162
166
|
});
|
|
163
167
|
const makeJsonSchema = ast => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Completions.js","names":["Chunk","_interopRequireWildcard","require","Context","Effect","HashMap","JsonSchema","Option","Schema","AST","Stream","_AiError","AiInput","_AiResponse","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Completions","Tag","exports","constEmptyMap","Map","make","options","map","serviceOption","SystemInstruction","parentSystem","of","create","input","pipe","flatMap","system","orElse","tools","required","withSpan","captureStackTrace","stream","input_","unwrap","structured","opts","schema","decode","decodeUnknown","toolId","_tag","identifier","convertTool","response","findFirst","parts","part","name","match","onNone","fail","AiError","module","method","description","onSome","toolCall","matchEffect","params","onFailure","cause","onSuccess","resolved","succeed","WithResolved","id","encoded","attributes","tool","toolkit","concurrency","inputInput","toolArr","push","resolveParts","toolkitStream","mapEffect","chunk","getDescription","ast","parameters","makeJsonSchema","$defs","fromAST","definitions","topLevelReferenceStrategy","keys","length","annotations","to","DescriptionAnnotationId","toolNames","toolParts","filter","isEmpty","annotateCurrentSpan","zipRight","forEach","unsafeGet","handler","handlers","decodeParams","encodeSuccess","encode","success","mapError","tap","value","encodedValue","discard","as"],"sources":["../../src/Completions.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Completions.js","names":["Chunk","_interopRequireWildcard","require","Context","Effect","HashMap","JsonSchema","Option","Schema","AST","Stream","_AiError","AiInput","_AiResponse","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Completions","Tag","exports","constEmptyMap","Map","make","options","map","serviceOption","SystemInstruction","parentSystem","of","create","input","useSpan","captureStackTrace","span","pipe","flatMap","system","orElse","tools","required","stream","input_","makeSpanScoped","zip","unwrapScoped","structured","opts","decode","decodeUnknown","schema","toolId","toolCallId","_tag","identifier","attributes","convertTool","response","findFirst","parts","part","name","match","onNone","fail","AiError","module","method","description","onSome","toolCall","matchEffect","params","onFailure","cause","onSuccess","resolved","succeed","WithResolved","id","encoded","toolkit","concurrency","inputInput","toolArr","tool","push","resolveParts","toolkitStream","mapEffect","chunk","getDescription","ast","parameters","makeJsonSchema","$defs","fromAST","definitions","topLevelReferenceStrategy","keys","length","annotations","to","DescriptionAnnotationId","toolNames","toolParts","filter","isEmpty","annotateCurrentSpan","zipRight","forEach","unsafeGet","handler","handlers","decodeParams","encodeSuccess","encode","success","mapError","tap","value","encodedValue","discard","as"],"sources":["../../src/Completions.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|