@anvia/core 0.6.0 → 0.6.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/dist/agent/index.d.ts +8 -8
- package/dist/agent/index.js +3 -3
- package/dist/{agent-BURoB-me.d.ts → agent-BXsuZ7pi.d.ts} +9 -3
- package/dist/audio-generation/index.d.ts +1 -1
- package/dist/{chunk-OXYZDHNI.js → chunk-PZN27R7H.js} +3 -3
- package/dist/{chunk-IXK3TEHJ.js → chunk-SWG6AORE.js} +50 -2
- package/dist/chunk-SWG6AORE.js.map +1 -0
- package/dist/{chunk-6NWNL2KM.js → chunk-WZR3ZPGM.js} +2 -2
- package/dist/{chunk-A4GUJSEK.js → chunk-ZQQYFVO5.js} +30 -1
- package/dist/chunk-ZQQYFVO5.js.map +1 -0
- package/dist/completion/index.d.ts +3 -3
- package/dist/completion/index.js +1 -1
- package/dist/{create-completion-Bog3ni7b.d.ts → create-completion-B7-k4LsF.d.ts} +1 -1
- package/dist/evals/index.d.ts +4 -4
- package/dist/evals/index.js +4 -4
- package/dist/extractor/index.d.ts +4 -4
- package/dist/extractor/index.js +4 -4
- package/dist/image-generation/index.d.ts +1 -1
- package/dist/index.d.ts +8 -8
- package/dist/index.js +5 -3
- package/dist/internal/agent.d.ts +4 -4
- package/dist/internal/agent.js +2 -2
- package/dist/loaders/index.d.ts +1 -1
- package/dist/mcp/index.d.ts +4 -4
- package/dist/memory/index.d.ts +1 -1
- package/dist/{middleware-C9QIms85.d.ts → middleware-D6Wu0AcC.d.ts} +2 -2
- package/dist/observability/index.d.ts +2 -2
- package/dist/pipeline/index.d.ts +4 -4
- package/dist/skills/index.d.ts +4 -4
- package/dist/{think-tool-DLTCqqJ6.d.ts → think-tool-DTDGH1Q1.d.ts} +1 -1
- package/dist/tool/index.d.ts +4 -4
- package/dist/{tool-Dz-lHZon.d.ts → tool-OU7OZS0t.d.ts} +1 -1
- package/dist/transcription/index.d.ts +1 -1
- package/dist/{types-DUivppau.d.ts → types-Bpjngcxq.d.ts} +1 -1
- package/dist/{types-BfHZz1ZG.d.ts → types-DXkaLs4s.d.ts} +2 -2
- package/dist/{types-Dmoq-Fhz.d.ts → types-_boSLqrx.d.ts} +4 -1
- package/dist/vector-store/index.d.ts +2 -2
- package/package.json +1 -1
- package/dist/chunk-A4GUJSEK.js.map +0 -1
- package/dist/chunk-IXK3TEHJ.js.map +0 -1
- /package/dist/{chunk-OXYZDHNI.js.map → chunk-PZN27R7H.js.map} +0 -0
- /package/dist/{chunk-6NWNL2KM.js.map → chunk-WZR3ZPGM.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/completion/types.ts","../src/completion/create-completion.ts","../src/completion/documents.ts","../src/completion/request.ts"],"sourcesContent":["export type JsonPrimitive = string | number | boolean | null;\nexport type JsonValue = JsonPrimitive | JsonObject | JsonValue[];\nexport type JsonObject = { [key: string]: JsonValue | undefined };\n\nexport type Document = {\n id: string;\n text: string;\n additionalProps?: Record<string, string>;\n};\n\nexport type Text = {\n type: \"text\";\n text: string;\n signature?: string;\n};\n\nexport type ImageDetail = \"auto\" | \"low\" | \"high\";\n\nexport type ImageContent = {\n type: \"image\";\n source:\n | {\n type: \"url\";\n url: string;\n }\n | {\n type: \"base64\";\n data: string;\n mediaType: string;\n };\n detail?: ImageDetail;\n};\n\nexport type DocumentContent = {\n type: \"document\";\n source:\n | {\n type: \"url\";\n url: string;\n mediaType: string;\n filename?: string;\n }\n | {\n type: \"base64\";\n data: string;\n mediaType: string;\n filename?: string;\n }\n | {\n type: \"text\";\n text: string;\n mediaType?: string;\n filename?: string;\n };\n};\n\nexport type Reasoning = {\n type: \"reasoning\";\n text: string;\n id?: string;\n content?: ReasoningContent[];\n};\n\nexport type ReasoningContent =\n | {\n type: \"text\";\n text: string;\n signature?: string;\n }\n | {\n type: \"summary\";\n text: string;\n }\n | {\n type: \"encrypted\";\n data: string;\n }\n | {\n type: \"redacted\";\n data: string;\n };\n\nexport type ReasoningContentType = ReasoningContent[\"type\"];\n\nexport type ToolFunction = {\n name: string;\n arguments: JsonValue;\n};\n\nexport type ToolCall = {\n type: \"tool_call\";\n id: string;\n callId?: string;\n function: ToolFunction;\n signature?: string;\n additionalParams?: JsonValue;\n};\n\nexport type ToolResultContent =\n | { type: \"text\"; text: string }\n | { type: \"image\"; data: string; mediaType?: string };\n\nexport type ToolResult = {\n type: \"tool_result\";\n id: string;\n callId?: string;\n content: ToolResultContent[];\n};\n\nexport type UserContent = Text | ImageContent | DocumentContent;\nexport type AssistantContent = Text | ToolCall | Reasoning | ImageContent;\nexport type ToolContent = ToolResult;\n\nexport type SystemMessage = {\n role: \"system\";\n content: string;\n};\n\nexport type UserMessage = {\n role: \"user\";\n content: UserContent[];\n};\n\nexport type AssistantMessage = {\n role: \"assistant\";\n id?: string;\n content: AssistantContent[];\n};\n\nexport type ToolMessage = {\n role: \"tool\";\n content: ToolContent[];\n};\n\nexport type Message = SystemMessage | UserMessage | AssistantMessage | ToolMessage;\n\nexport const UserContent = {\n text(text: string): Text {\n return { type: \"text\", text };\n },\n imageUrl(url: string, options: { detail?: ImageDetail } = {}): ImageContent {\n const image: ImageContent = { type: \"image\", source: { type: \"url\", url } };\n if (options.detail !== undefined) {\n image.detail = options.detail;\n }\n return image;\n },\n imageBase64(\n data: string,\n mediaType: string,\n options: { detail?: ImageDetail } = {},\n ): ImageContent {\n const image: ImageContent = {\n type: \"image\",\n source: { type: \"base64\", data, mediaType },\n };\n if (options.detail !== undefined) {\n image.detail = options.detail;\n }\n return image;\n },\n documentUrl(\n url: string,\n mediaType: string,\n options: { filename?: string | undefined } = {},\n ): DocumentContent {\n return {\n type: \"document\",\n source:\n options.filename === undefined\n ? { type: \"url\", url, mediaType }\n : { type: \"url\", url, mediaType, filename: options.filename },\n };\n },\n documentBase64(\n data: string,\n mediaType: string,\n options: { filename?: string | undefined } = {},\n ): DocumentContent {\n return {\n type: \"document\",\n source:\n options.filename === undefined\n ? { type: \"base64\", data, mediaType }\n : { type: \"base64\", data, mediaType, filename: options.filename },\n };\n },\n documentText(text: string): Text {\n return { type: \"text\", text };\n },\n};\n\nexport const ToolContent = {\n toolResult(id: string, content: string | ToolResultContent[], callId?: string): ToolResult {\n const normalized =\n typeof content === \"string\" ? [{ type: \"text\" as const, text: content }] : content;\n return callId === undefined\n ? { type: \"tool_result\", id, content: normalized }\n : { type: \"tool_result\", id, callId, content: normalized };\n },\n};\n\nfunction serializeToolResultOutput(output: unknown): string {\n if (typeof output === \"string\") {\n return output;\n }\n\n try {\n const serialized = JSON.stringify(output);\n return serialized === undefined ? String(output) : serialized;\n } catch {\n return String(output);\n }\n}\n\nfunction isToolResultContentArray(value: unknown): value is ToolResultContent[] {\n return (\n Array.isArray(value) &&\n value.length > 0 &&\n value.every((item) => {\n if (typeof item !== \"object\" || item === null || !(\"type\" in item)) {\n return false;\n }\n if (item.type === \"text\") {\n return \"text\" in item && typeof item.text === \"string\";\n }\n if (item.type === \"image\") {\n return (\n \"data\" in item &&\n typeof item.data === \"string\" &&\n (!(\"mediaType\" in item) ||\n item.mediaType === undefined ||\n typeof item.mediaType === \"string\")\n );\n }\n return false;\n })\n );\n}\n\nexport const AssistantContent = {\n text(text: string): Text {\n return { type: \"text\", text };\n },\n imageUrl(url: string, options: { detail?: ImageDetail } = {}): ImageContent {\n const image: ImageContent = { type: \"image\", source: { type: \"url\", url } };\n if (options.detail !== undefined) {\n image.detail = options.detail;\n }\n return image;\n },\n imageBase64(\n data: string,\n mediaType: string,\n options: { detail?: ImageDetail } = {},\n ): ImageContent {\n const image: ImageContent = {\n type: \"image\",\n source: { type: \"base64\", data, mediaType },\n };\n if (options.detail !== undefined) {\n image.detail = options.detail;\n }\n return image;\n },\n reasoning(text: string, id?: string): Reasoning {\n return id === undefined ? { type: \"reasoning\", text } : { type: \"reasoning\", text, id };\n },\n reasoningFromContent(content: ReasoningContent[], id?: string): Reasoning {\n const text = reasoningDisplayText(content);\n const reasoning: Reasoning = { type: \"reasoning\", text, content };\n return id === undefined ? reasoning : { ...reasoning, id };\n },\n reasoningSummary(text: string, id?: string): Reasoning {\n return AssistantContent.reasoningFromContent([{ type: \"summary\", text }], id);\n },\n reasoningEncrypted(data: string, id?: string): Reasoning {\n return AssistantContent.reasoningFromContent([{ type: \"encrypted\", data }], id);\n },\n reasoningRedacted(data: string, id?: string): Reasoning {\n return AssistantContent.reasoningFromContent([{ type: \"redacted\", data }], id);\n },\n toolCall(id: string, name: string, args: JsonValue, callId?: string): ToolCall {\n const base: ToolCall = {\n type: \"tool_call\",\n id,\n function: {\n name,\n arguments: args,\n },\n };\n return callId === undefined ? base : { ...base, callId };\n },\n};\n\nexport function reasoningDisplayText(reasoning: Reasoning | ReasoningContent[]): string {\n const content = Array.isArray(reasoning) ? reasoning : reasoning.content;\n if (content === undefined) {\n return Array.isArray(reasoning) ? \"\" : reasoning.text;\n }\n return content\n .flatMap((item) => {\n if (item.type === \"text\" || item.type === \"summary\") {\n return [item.text];\n }\n return [];\n })\n .join(\"\");\n}\n\nexport const Message = {\n system(content: string): Message {\n return { role: \"system\", content };\n },\n user(content: string | UserContent[]): Message {\n return {\n role: \"user\",\n content: typeof content === \"string\" ? [UserContent.text(content)] : content,\n };\n },\n assistant(content: string | AssistantContent[], id?: string): Message {\n const normalized = typeof content === \"string\" ? [AssistantContent.text(content)] : content;\n return id === undefined\n ? { role: \"assistant\", content: normalized }\n : { role: \"assistant\", id, content: normalized };\n },\n tool(content: ToolContent | ToolContent[]): Message {\n return {\n role: \"tool\",\n content: Array.isArray(content) ? content : [content],\n };\n },\n toolResult(id: string, output: unknown, options: { callId?: string | undefined } = {}): Message {\n const content = isToolResultContentArray(output) ? output : serializeToolResultOutput(output);\n return Message.tool(ToolContent.toolResult(id, content, options.callId));\n },\n};\n\nexport type ToolChoice =\n | \"auto\"\n | \"required\"\n | \"none\"\n | {\n type: \"function\";\n name: string;\n };\n\nexport type ToolDefinition = {\n name: string;\n description: string;\n parameters: JsonObject;\n};\n\nexport type Usage = {\n inputTokens: number;\n outputTokens: number;\n totalTokens: number;\n cachedInputTokens: number;\n cacheCreationInputTokens: number;\n};\n\nexport const Usage = {\n empty(): Usage {\n return {\n inputTokens: 0,\n outputTokens: 0,\n totalTokens: 0,\n cachedInputTokens: 0,\n cacheCreationInputTokens: 0,\n };\n },\n add(left: Usage, right: Usage): Usage {\n return {\n inputTokens: left.inputTokens + right.inputTokens,\n outputTokens: left.outputTokens + right.outputTokens,\n totalTokens: left.totalTokens + right.totalTokens,\n cachedInputTokens: left.cachedInputTokens + right.cachedInputTokens,\n cacheCreationInputTokens: left.cacheCreationInputTokens + right.cacheCreationInputTokens,\n };\n },\n};\n\nexport type CompletionRequest = {\n model?: string;\n instructions?: string;\n chatHistory: Message[];\n documents: Document[];\n tools: ToolDefinition[];\n temperature?: number;\n maxTokens?: number;\n toolChoice?: ToolChoice;\n additionalParams?: JsonValue;\n outputSchema?: JsonObject;\n};\n\nexport type CompletionResponse<RawResponse = unknown> = {\n choice: AssistantContent[];\n usage: Usage;\n rawResponse: RawResponse;\n messageId?: string;\n};\n\nexport type CompletionModelCapabilities = {\n streaming: boolean;\n tools: boolean;\n toolChoice: boolean;\n imageInput: boolean;\n documentInput: boolean;\n outputSchema: boolean;\n reasoning: boolean;\n};\n\nexport interface CompletionModel<RawResponse = unknown> {\n readonly provider: string;\n readonly defaultModel: string;\n readonly capabilities: CompletionModelCapabilities;\n traceRequest?(\n request: CompletionRequest,\n options?: { stream?: boolean | undefined },\n ): JsonObject | undefined;\n completion(request: CompletionRequest): Promise<CompletionResponse<RawResponse>>;\n}\n\nexport type CompletionStreamEvent<RawResponse = unknown> =\n | {\n type: \"text_delta\";\n delta: string;\n }\n | {\n type: \"reasoning_delta\";\n delta: string;\n id?: string;\n contentType?: ReasoningContentType;\n signature?: string;\n }\n | {\n type: \"tool_call_delta\";\n id: string;\n callId?: string;\n name?: string;\n argumentsDelta?: string;\n signature?: string;\n }\n | {\n type: \"tool_call\";\n toolCall: ToolCall;\n }\n | {\n type: \"message_id\";\n id: string;\n }\n | {\n type: \"final\";\n response: CompletionResponse<RawResponse>;\n }\n | {\n type: \"error\";\n error: unknown;\n };\n\nexport interface StreamingCompletionModel<RawResponse = unknown>\n extends CompletionModel<RawResponse> {\n streamCompletion(request: CompletionRequest): AsyncIterable<CompletionStreamEvent<RawResponse>>;\n}\n\nexport class CompletionCapabilityError extends Error {\n constructor(message: string) {\n super(message);\n this.name = \"CompletionCapabilityError\";\n }\n}\n\nexport function assertCompletionRequestSupported(\n model: CompletionModel,\n request: CompletionRequest,\n options: { streaming?: boolean | undefined } = {},\n): void {\n const modelLabel = `${model.provider}:${request.model ?? model.defaultModel}`;\n const capabilities = model.capabilities;\n\n if (options.streaming === true && !capabilities.streaming) {\n throw new CompletionCapabilityError(`${modelLabel} does not support streaming completions.`);\n }\n\n if (request.tools.length > 0 && !capabilities.tools) {\n throw new CompletionCapabilityError(`${modelLabel} does not support tool definitions.`);\n }\n\n if (request.toolChoice !== undefined && !capabilities.toolChoice) {\n throw new CompletionCapabilityError(`${modelLabel} does not support tool choice.`);\n }\n\n if (request.outputSchema !== undefined && !capabilities.outputSchema) {\n throw new CompletionCapabilityError(`${modelLabel} does not support output schemas.`);\n }\n\n if (!capabilities.imageInput && requestHasImageInput(request)) {\n throw new CompletionCapabilityError(`${modelLabel} does not support image input.`);\n }\n\n if (!capabilities.documentInput && requestHasFileDocumentInput(request)) {\n throw new CompletionCapabilityError(`${modelLabel} does not support document file input.`);\n }\n}\n\nexport function textFromAssistantContent(content: AssistantContent[]): string {\n return content.flatMap((item) => (item.type === \"text\" ? [item.text] : [])).join(\"\\n\");\n}\n\nfunction requestHasImageInput(request: CompletionRequest): boolean {\n return request.chatHistory.some((message) =>\n message.role === \"system\" ? false : message.content.some((content) => content.type === \"image\"),\n );\n}\n\nfunction requestHasFileDocumentInput(request: CompletionRequest): boolean {\n return request.chatHistory.some((message) =>\n message.role === \"user\"\n ? message.content.some(\n (content) => content.type === \"document\" && content.source.type !== \"text\",\n )\n : false,\n );\n}\n","import { toProviderJsonSchema, type ZodSchema } from \"../schema/zod-schema\";\nimport type {\n AssistantContent,\n CompletionModel,\n CompletionRequest,\n CompletionResponse,\n CompletionStreamEvent,\n Document,\n JsonObject,\n JsonValue,\n Message as MessageType,\n StreamingCompletionModel,\n ToolChoice,\n ToolDefinition,\n Usage,\n} from \"./types\";\nimport { assertCompletionRequestSupported, Message, textFromAssistantContent } from \"./types\";\n\nexport type CreateCompletionInput = string | MessageType | MessageType[];\n\nexport type CreateCompletionBaseOptions = {\n input?: CreateCompletionInput | undefined;\n messages?: MessageType[] | undefined;\n instructions?: string | undefined;\n documents?: Document[] | undefined;\n tools?: ToolDefinition[] | undefined;\n temperature?: number | undefined;\n maxTokens?: number | undefined;\n toolChoice?: ToolChoice | undefined;\n outputSchema?: JsonObject | undefined;\n params?: JsonValue | undefined;\n};\n\nexport type CreateCompletionOptions = CreateCompletionBaseOptions;\n\nexport type CreateCompletionStreamOptions = CreateCompletionBaseOptions;\n\nexport type CreateParsedCompletionOptions<T> = Omit<CreateCompletionBaseOptions, \"outputSchema\"> & {\n schema: ZodSchema<T>;\n};\n\nexport type CreateCompletionResult<RawResponse = unknown> = {\n text: string;\n content: AssistantContent[];\n usage: Usage;\n response: CompletionResponse<RawResponse>;\n};\n\nexport type CreateParsedCompletionResult<\n T,\n RawResponse = unknown,\n> = CreateCompletionResult<RawResponse> & {\n data: T;\n};\n\ntype RawResponseOf<Model> =\n Model extends CompletionModel<infer RawResponse> ? RawResponse : unknown;\n\nexport function createCompletion<Model extends CompletionModel>(\n model: Model,\n options: CreateCompletionOptions,\n): Promise<CreateCompletionResult<RawResponseOf<Model>>> {\n return sendCompletion(model, options);\n}\n\nexport function createCompletionStream<Model extends StreamingCompletionModel>(\n model: Model,\n options: CreateCompletionStreamOptions,\n): AsyncIterable<CompletionStreamEvent<RawResponseOf<Model>>> {\n const request = toCompletionRequest(options);\n if (!isStreamingCompletionModel(model) || !model.capabilities.streaming) {\n throw new Error(\"This completion model does not support streaming\");\n }\n assertCompletionRequestSupported(model, request, { streaming: true });\n return model.streamCompletion(request) as AsyncIterable<\n CompletionStreamEvent<RawResponseOf<Model>>\n >;\n}\n\nexport async function createParsedCompletion<T, Model extends CompletionModel>(\n model: Model,\n options: CreateParsedCompletionOptions<T>,\n): Promise<CreateParsedCompletionResult<T, RawResponseOf<Model>>> {\n const { schema, ...completionOptions } = options;\n const request = toCompletionRequest(\n {\n ...completionOptions,\n outputSchema: toProviderJsonSchema(schema),\n },\n \"createParsedCompletion\",\n );\n assertCompletionRequestSupported(model, request);\n const response = (await model.completion(request)) as CompletionResponse<RawResponseOf<Model>>;\n const text = textFromAssistantContent(response.choice);\n return {\n data: parseCompletionData(text, schema),\n text,\n content: response.choice,\n usage: response.usage,\n response,\n };\n}\n\nasync function sendCompletion<Model extends CompletionModel>(\n model: Model,\n options: CreateCompletionOptions,\n): Promise<CreateCompletionResult<RawResponseOf<Model>>> {\n const request = toCompletionRequest(options);\n assertCompletionRequestSupported(model, request);\n const response = (await model.completion(request)) as CompletionResponse<RawResponseOf<Model>>;\n return {\n text: textFromAssistantContent(response.choice),\n content: response.choice,\n usage: response.usage,\n response,\n };\n}\n\nfunction toCompletionRequest(\n options: CreateCompletionBaseOptions,\n helperName = \"createCompletion\",\n): CompletionRequest {\n const chatHistory = [...(options.messages ?? []), ...messagesFromInput(options.input)];\n\n if (chatHistory.length === 0) {\n throw new Error(`${helperName} requires input or messages.`);\n }\n\n const request: CompletionRequest = {\n chatHistory,\n documents: [...(options.documents ?? [])],\n tools: [...(options.tools ?? [])],\n };\n\n if (options.instructions !== undefined && options.instructions.length > 0) {\n request.instructions = options.instructions;\n }\n if (options.temperature !== undefined) request.temperature = options.temperature;\n if (options.maxTokens !== undefined) request.maxTokens = options.maxTokens;\n if (options.toolChoice !== undefined) request.toolChoice = options.toolChoice;\n if (options.outputSchema !== undefined) request.outputSchema = options.outputSchema;\n if (options.params !== undefined) request.additionalParams = options.params;\n\n return request;\n}\n\nfunction messagesFromInput(input: CreateCompletionInput | undefined): MessageType[] {\n if (input === undefined) {\n return [];\n }\n if (typeof input === \"string\") {\n return [Message.user(input)];\n }\n return Array.isArray(input) ? [...input] : [input];\n}\n\nfunction isStreamingCompletionModel(model: CompletionModel): model is StreamingCompletionModel {\n return typeof (model as { streamCompletion?: unknown }).streamCompletion === \"function\";\n}\n\nfunction parseCompletionData<T>(text: string, schema: ZodSchema<T>): T {\n let json: unknown;\n try {\n json = JSON.parse(text);\n } catch (error) {\n throw new Error(\"createParsedCompletion expected the model response to be valid JSON.\", {\n cause: error,\n });\n }\n\n return schema.parse(json);\n}\n","import { type Document, Message, type Message as MessageType } from \"./types\";\n\nexport function normalizeDocuments(documents: Document[]): MessageType | undefined {\n if (documents.length === 0) {\n return undefined;\n }\n\n return Message.user(documents.map(formatDocument).join(\"\\n\"));\n}\n\nexport function formatDocument(document: Document): string {\n return `<file id: ${document.id}>\\n${formatDocumentBody(document)}\\n</file>\\n`;\n}\n\nfunction formatDocumentBody(document: Document): string {\n const metadata = formatMetadata(document.additionalProps);\n return metadata === undefined ? document.text : `${metadata}\\n${document.text}`;\n}\n\nfunction formatMetadata(additionalProps: Record<string, string> | undefined): string | undefined {\n if (additionalProps === undefined) {\n return undefined;\n }\n\n const entries = Object.entries(additionalProps).sort(([left], [right]) =>\n left.localeCompare(right),\n );\n if (entries.length === 0) {\n return undefined;\n }\n\n const metadata = entries.map(([key, value]) => `${key}: ${JSON.stringify(value)}`).join(\" \");\n return `<metadata ${metadata} />`;\n}\n","import type {\n CompletionModel,\n CompletionRequest,\n CompletionResponse,\n Document,\n JsonObject,\n JsonValue,\n Message as MessageType,\n ToolChoice,\n ToolDefinition,\n} from \"./types\";\nimport { assertCompletionRequestSupported } from \"./types\";\n\nexport class CompletionRequestBuilder<M extends CompletionModel = CompletionModel> {\n private requestModel: string | undefined;\n private instructionBlocks: string[] = [];\n private history: MessageType[] = [];\n private docs: Document[] = [];\n private toolDefs: ToolDefinition[] = [];\n private temp: number | undefined;\n private maxTokenCount: number | undefined;\n private choice: ToolChoice | undefined;\n private params: JsonValue | undefined;\n private schema: JsonObject | undefined;\n\n constructor(\n private readonly model: M,\n private readonly promptMessage: MessageType,\n ) {}\n\n modelOverride(model: string | undefined): this {\n this.requestModel = model;\n return this;\n }\n\n instructions(instructions: string | undefined): this {\n if (instructions !== undefined && instructions.length > 0) {\n this.instructionBlocks.push(instructions);\n }\n return this;\n }\n\n messages(messages: MessageType[]): this {\n this.history.push(...messages);\n return this;\n }\n\n documents(documents: Document[]): this {\n this.docs.push(...documents);\n return this;\n }\n\n tools(tools: ToolDefinition[]): this {\n this.toolDefs.push(...tools);\n return this;\n }\n\n temperature(temperature: number | undefined): this {\n this.temp = temperature;\n return this;\n }\n\n maxTokens(maxTokens: number | undefined): this {\n this.maxTokenCount = maxTokens;\n return this;\n }\n\n toolChoice(toolChoice: ToolChoice | undefined): this {\n this.choice = toolChoice;\n return this;\n }\n\n additionalParams(additionalParams: JsonValue | undefined): this {\n this.params = additionalParams;\n return this;\n }\n\n outputSchema(outputSchema: JsonObject | undefined): this {\n this.schema = outputSchema;\n return this;\n }\n\n build(): CompletionRequest {\n const instructions = this.buildInstructions();\n const request: CompletionRequest = {\n chatHistory: [...this.history, this.promptMessage],\n documents: [...this.docs],\n tools: [...this.toolDefs],\n };\n\n if (this.requestModel !== undefined) request.model = this.requestModel;\n if (instructions !== undefined) request.instructions = instructions;\n if (this.temp !== undefined) request.temperature = this.temp;\n if (this.maxTokenCount !== undefined) request.maxTokens = this.maxTokenCount;\n if (this.choice !== undefined) request.toolChoice = this.choice;\n if (this.params !== undefined) request.additionalParams = this.params;\n if (this.schema !== undefined) request.outputSchema = this.schema;\n\n return request;\n }\n\n async send(): Promise<CompletionResponse> {\n const request = this.build();\n assertCompletionRequestSupported(this.model, request);\n return this.model.completion(request);\n }\n\n private buildInstructions(): string | undefined {\n return this.instructionBlocks.length === 0 ? undefined : this.instructionBlocks.join(\"\\n\\n\");\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { C as CreateCompletionBaseOptions, a as CreateCompletionInput, b as CreateCompletionOptions, c as CreateCompletionResult, d as CreateCompletionStreamOptions, e as CreateParsedCompletionOptions, f as CreateParsedCompletionResult, g as createCompletion, h as createCompletionStream, i as createParsedCompletion } from '../create-completion-
|
|
2
|
-
import { D as Document, M as Message, C as CompletionModel,
|
|
3
|
-
export { A as AssistantContent, a as AssistantMessage,
|
|
1
|
+
export { C as CreateCompletionBaseOptions, a as CreateCompletionInput, b as CreateCompletionOptions, c as CreateCompletionResult, d as CreateCompletionStreamOptions, e as CreateParsedCompletionOptions, f as CreateParsedCompletionResult, g as createCompletion, h as createCompletionStream, i as createParsedCompletion } from '../create-completion-B7-k4LsF.js';
|
|
2
|
+
import { D as Document, M as Message, C as CompletionModel, h as ToolDefinition, n as ToolChoice, e as JsonValue, J as JsonObject, b as CompletionRequest, c as CompletionResponse } from '../types-_boSLqrx.js';
|
|
3
|
+
export { A as AssistantContent, a as AssistantMessage, q as CompletionCapabilityError, r as CompletionModelCapabilities, p as CompletionStreamEvent, s as DocumentContent, I as ImageContent, t as ImageDetail, d as JsonPrimitive, R as Reasoning, u as ReasoningContent, v as ReasoningContentType, o as StreamingCompletionModel, S as SystemMessage, T as Text, f as ToolCall, g as ToolContent, w as ToolFunction, i as ToolMessage, j as ToolResult, k as ToolResultContent, U as Usage, l as UserContent, m as UserMessage, x as assertCompletionRequestSupported, y as reasoningDisplayText, z as textFromAssistantContent } from '../types-_boSLqrx.js';
|
|
4
4
|
import '../zod-schema-C7F4clpm.js';
|
|
5
5
|
import 'zod';
|
|
6
6
|
|
package/dist/completion/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Z as ZodSchema } from './zod-schema-C7F4clpm.js';
|
|
2
|
-
import { M as Message, D as Document,
|
|
2
|
+
import { M as Message, D as Document, h as ToolDefinition, n as ToolChoice, J as JsonObject, e as JsonValue, A as AssistantContent, U as Usage, c as CompletionResponse, C as CompletionModel, o as StreamingCompletionModel, p as CompletionStreamEvent } from './types-_boSLqrx.js';
|
|
3
3
|
|
|
4
4
|
type CreateCompletionInput = string | Message | Message[];
|
|
5
5
|
type CreateCompletionBaseOptions = {
|
package/dist/evals/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { P as PromptResponse, e as Agent } from '../agent-
|
|
2
|
-
import { e as JsonValue, M as Message, C as CompletionModel } from '../types-
|
|
1
|
+
import { P as PromptResponse, e as Agent } from '../agent-BXsuZ7pi.js';
|
|
2
|
+
import { e as JsonValue, M as Message, C as CompletionModel } from '../types-_boSLqrx.js';
|
|
3
3
|
import { Z as ZodSchema } from '../zod-schema-C7F4clpm.js';
|
|
4
4
|
import { E as EmbeddingModel } from '../types-IB2e9u5M.js';
|
|
5
5
|
import '../memory/index.js';
|
|
6
6
|
import '../observability/index.js';
|
|
7
|
-
import '../tool-
|
|
8
|
-
import '../middleware-
|
|
7
|
+
import '../tool-OU7OZS0t.js';
|
|
8
|
+
import '../middleware-D6Wu0AcC.js';
|
|
9
9
|
import '../vector-store/index.js';
|
|
10
10
|
import 'zod';
|
|
11
11
|
|
package/dist/evals/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ExtractorBuilder
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
5
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-PZN27R7H.js";
|
|
4
|
+
import "../chunk-WZR3ZPGM.js";
|
|
5
|
+
import "../chunk-SWG6AORE.js";
|
|
6
6
|
import "../chunk-XUUY2L2D.js";
|
|
7
7
|
import "../chunk-XXT2UCAR.js";
|
|
8
8
|
import "../chunk-YK4WAAS4.js";
|
|
9
9
|
import "../chunk-AER5FGPK.js";
|
|
10
10
|
import "../chunk-I47EHI45.js";
|
|
11
|
-
import "../chunk-
|
|
11
|
+
import "../chunk-ZQQYFVO5.js";
|
|
12
12
|
import "../chunk-WQKHFADH.js";
|
|
13
13
|
import {
|
|
14
14
|
cosineSimilarity,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { e as Agent } from '../agent-
|
|
1
|
+
import { e as Agent } from '../agent-BXsuZ7pi.js';
|
|
2
2
|
import { Z as ZodSchema } from '../zod-schema-C7F4clpm.js';
|
|
3
|
-
import { U as Usage, M as Message, C as CompletionModel, e as JsonValue,
|
|
3
|
+
import { U as Usage, M as Message, C as CompletionModel, e as JsonValue, n as ToolChoice } from '../types-_boSLqrx.js';
|
|
4
4
|
import '../memory/index.js';
|
|
5
5
|
import '../observability/index.js';
|
|
6
|
-
import '../tool-
|
|
7
|
-
import '../middleware-
|
|
6
|
+
import '../tool-OU7OZS0t.js';
|
|
7
|
+
import '../middleware-D6Wu0AcC.js';
|
|
8
8
|
import '../types-IB2e9u5M.js';
|
|
9
9
|
import '../vector-store/index.js';
|
|
10
10
|
import 'zod';
|
package/dist/extractor/index.js
CHANGED
|
@@ -2,15 +2,15 @@ import {
|
|
|
2
2
|
ExtractionError,
|
|
3
3
|
Extractor,
|
|
4
4
|
ExtractorBuilder
|
|
5
|
-
} from "../chunk-
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-
|
|
5
|
+
} from "../chunk-PZN27R7H.js";
|
|
6
|
+
import "../chunk-WZR3ZPGM.js";
|
|
7
|
+
import "../chunk-SWG6AORE.js";
|
|
8
8
|
import "../chunk-XUUY2L2D.js";
|
|
9
9
|
import "../chunk-XXT2UCAR.js";
|
|
10
10
|
import "../chunk-YK4WAAS4.js";
|
|
11
11
|
import "../chunk-AER5FGPK.js";
|
|
12
12
|
import "../chunk-I47EHI45.js";
|
|
13
|
-
import "../chunk-
|
|
13
|
+
import "../chunk-ZQQYFVO5.js";
|
|
14
14
|
import "../chunk-WQKHFADH.js";
|
|
15
15
|
import "../chunk-EFGX3EX5.js";
|
|
16
16
|
import "../chunk-OIMLU4SF.js";
|
package/dist/index.d.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
export { AgentBuilder, MaxTurnsError, PromptCancelledError } from './agent/index.js';
|
|
2
|
-
export { A as AgentChildStreamEvent, a as AgentStreamEvent, P as PromptResponse, c as cancelPrompt, b as createHook, r as requestToolApproval, d as runControl, s as skipTool, t as toolCallControl } from './agent-
|
|
3
|
-
export { C as CreateCompletionBaseOptions, a as CreateCompletionInput, b as CreateCompletionOptions, c as CreateCompletionResult, d as CreateCompletionStreamOptions, e as CreateParsedCompletionOptions, f as CreateParsedCompletionResult, g as createCompletion, h as createCompletionStream, i as createParsedCompletion } from './create-completion-
|
|
4
|
-
export { A as AssistantContent, a as AssistantMessage, C as CompletionModel, b as CompletionRequest, c as CompletionResponse, D as Document, I as ImageContent, J as JsonObject, d as JsonPrimitive, e as JsonValue, M as Message, S as SystemMessage, T as Text, f as ToolCall, g as
|
|
2
|
+
export { A as AgentChildStreamEvent, a as AgentStreamEvent, P as PromptResponse, c as cancelPrompt, b as createHook, r as requestToolApproval, d as runControl, s as skipTool, t as toolCallControl } from './agent-BXsuZ7pi.js';
|
|
3
|
+
export { C as CreateCompletionBaseOptions, a as CreateCompletionInput, b as CreateCompletionOptions, c as CreateCompletionResult, d as CreateCompletionStreamOptions, e as CreateParsedCompletionOptions, f as CreateParsedCompletionResult, g as createCompletion, h as createCompletionStream, i as createParsedCompletion } from './create-completion-B7-k4LsF.js';
|
|
4
|
+
export { A as AssistantContent, a as AssistantMessage, C as CompletionModel, b as CompletionRequest, c as CompletionResponse, D as Document, I as ImageContent, J as JsonObject, d as JsonPrimitive, e as JsonValue, M as Message, S as SystemMessage, T as Text, f as ToolCall, g as ToolContent, h as ToolDefinition, i as ToolMessage, j as ToolResult, k as ToolResultContent, U as Usage, l as UserContent, m as UserMessage } from './types-_boSLqrx.js';
|
|
5
5
|
export { MemoryStore } from './memory/index.js';
|
|
6
6
|
export { Z as ZodSchema } from './zod-schema-C7F4clpm.js';
|
|
7
7
|
export { loadSkills, skill } from './skills/index.js';
|
|
8
|
-
export { S as SkillValidationError } from './types-
|
|
9
|
-
export { C as CreateToolOptions, c as createThinkTool, a as createTool } from './think-tool-
|
|
10
|
-
export { A as AnyTool, T as Tool, a as ToolApprovalContext, b as ToolApprovalPolicy, c as ToolCallContext, d as ToolCallStreamEvent } from './tool-
|
|
11
|
-
export { A as AgentMiddleware, C as CompletionRequestMiddlewareArgs, a as CompletionRequestMiddlewareResult, b as CompletionResponseMiddlewareArgs, c as CompletionResponseMiddlewareResult, T as ToolInputMiddlewareArgs, d as ToolInputMiddlewareResult, e as ToolMiddleware, f as ToolOutputMiddlewareArgs, g as ToolOutputMiddlewareResult, h as ToolResultMiddlewareArgs, i as createMiddleware, j as createToolMiddleware } from './middleware-
|
|
12
|
-
import './types-
|
|
8
|
+
export { S as SkillValidationError } from './types-Bpjngcxq.js';
|
|
9
|
+
export { C as CreateToolOptions, c as createThinkTool, a as createTool } from './think-tool-DTDGH1Q1.js';
|
|
10
|
+
export { A as AnyTool, T as Tool, a as ToolApprovalContext, b as ToolApprovalPolicy, c as ToolCallContext, d as ToolCallStreamEvent } from './tool-OU7OZS0t.js';
|
|
11
|
+
export { A as AgentMiddleware, C as CompletionRequestMiddlewareArgs, a as CompletionRequestMiddlewareResult, b as CompletionResponseMiddlewareArgs, c as CompletionResponseMiddlewareResult, T as ToolInputMiddlewareArgs, d as ToolInputMiddlewareResult, e as ToolMiddleware, f as ToolOutputMiddlewareArgs, g as ToolOutputMiddlewareResult, h as ToolResultMiddlewareArgs, i as createMiddleware, j as createToolMiddleware } from './middleware-D6Wu0AcC.js';
|
|
12
|
+
import './types-DXkaLs4s.js';
|
|
13
13
|
import '@modelcontextprotocol/sdk/client/sse.js';
|
|
14
14
|
import '@modelcontextprotocol/sdk/client/stdio.js';
|
|
15
15
|
import '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
} from "./chunk-SHHSMV7O.js";
|
|
6
6
|
import {
|
|
7
7
|
AgentBuilder
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-WZR3ZPGM.js";
|
|
9
9
|
import {
|
|
10
10
|
MaxTurnsError,
|
|
11
11
|
PromptCancelledError,
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
runControl,
|
|
16
16
|
skipTool,
|
|
17
17
|
toolCallControl
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-SWG6AORE.js";
|
|
19
19
|
import "./chunk-XUUY2L2D.js";
|
|
20
20
|
import "./chunk-XXT2UCAR.js";
|
|
21
21
|
import "./chunk-YK4WAAS4.js";
|
|
@@ -30,12 +30,13 @@ import {
|
|
|
30
30
|
import {
|
|
31
31
|
AssistantContent,
|
|
32
32
|
Message,
|
|
33
|
+
ToolContent,
|
|
33
34
|
Usage,
|
|
34
35
|
UserContent,
|
|
35
36
|
createCompletion,
|
|
36
37
|
createCompletionStream,
|
|
37
38
|
createParsedCompletion
|
|
38
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-ZQQYFVO5.js";
|
|
39
40
|
import "./chunk-WQKHFADH.js";
|
|
40
41
|
import "./chunk-EFGX3EX5.js";
|
|
41
42
|
import "./chunk-OIMLU4SF.js";
|
|
@@ -46,6 +47,7 @@ export {
|
|
|
46
47
|
Message,
|
|
47
48
|
PromptCancelledError,
|
|
48
49
|
SkillValidationError,
|
|
50
|
+
ToolContent,
|
|
49
51
|
Usage,
|
|
50
52
|
UserContent,
|
|
51
53
|
cancelPrompt,
|
package/dist/internal/agent.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { e as Agent, j as AgentEventAppendInput, k as AgentEventRecord, h as AgentEventStore, l as AgentEventStoreInclude, i as AgentEventStoreOptions, I as AgentEventStoreRegistration, J as AgentOptions, K as AgentSession, L as AgentToolOptions, M as DEFAULT_MAX_TURNS, D as DynamicContextOptions, N as DynamicContextRegistration, f as DynamicToolOptions, O as DynamicToolRegistration } from '../agent-
|
|
2
|
-
import '../types-
|
|
1
|
+
export { e as Agent, j as AgentEventAppendInput, k as AgentEventRecord, h as AgentEventStore, l as AgentEventStoreInclude, i as AgentEventStoreOptions, I as AgentEventStoreRegistration, J as AgentOptions, K as AgentSession, L as AgentToolOptions, M as DEFAULT_MAX_TURNS, D as DynamicContextOptions, N as DynamicContextRegistration, f as DynamicToolOptions, O as DynamicToolRegistration } from '../agent-BXsuZ7pi.js';
|
|
2
|
+
import '../types-_boSLqrx.js';
|
|
3
3
|
import '../memory/index.js';
|
|
4
4
|
import '../observability/index.js';
|
|
5
|
-
import '../tool-
|
|
6
|
-
import '../middleware-
|
|
5
|
+
import '../tool-OU7OZS0t.js';
|
|
6
|
+
import '../middleware-D6Wu0AcC.js';
|
|
7
7
|
import '../types-IB2e9u5M.js';
|
|
8
8
|
import '../vector-store/index.js';
|
package/dist/internal/agent.js
CHANGED
|
@@ -2,12 +2,12 @@ import {
|
|
|
2
2
|
Agent,
|
|
3
3
|
AgentSession,
|
|
4
4
|
DEFAULT_MAX_TURNS
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-SWG6AORE.js";
|
|
6
6
|
import "../chunk-XUUY2L2D.js";
|
|
7
7
|
import "../chunk-YK4WAAS4.js";
|
|
8
8
|
import "../chunk-AER5FGPK.js";
|
|
9
9
|
import "../chunk-I47EHI45.js";
|
|
10
|
-
import "../chunk-
|
|
10
|
+
import "../chunk-ZQQYFVO5.js";
|
|
11
11
|
import "../chunk-WQKHFADH.js";
|
|
12
12
|
import "../chunk-EFGX3EX5.js";
|
|
13
13
|
import "../chunk-OIMLU4SF.js";
|
package/dist/loaders/index.d.ts
CHANGED
package/dist/mcp/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { M as McpConnection, a as McpServer, b as McpStdioOptions, c as McpHttpOptions, d as McpSseOptions } from '../types-
|
|
2
|
-
export { e as McpClient, f as McpToolCallContent, g as McpToolCallResult, h as McpToolDefinition } from '../types-
|
|
1
|
+
import { M as McpConnection, a as McpServer, b as McpStdioOptions, c as McpHttpOptions, d as McpSseOptions } from '../types-DXkaLs4s.js';
|
|
2
|
+
export { e as McpClient, f as McpToolCallContent, g as McpToolCallResult, h as McpToolDefinition } from '../types-DXkaLs4s.js';
|
|
3
3
|
import '@modelcontextprotocol/sdk/client/sse.js';
|
|
4
4
|
import '@modelcontextprotocol/sdk/client/stdio.js';
|
|
5
5
|
import '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
6
|
-
import '../types-
|
|
7
|
-
import '../tool-
|
|
6
|
+
import '../types-_boSLqrx.js';
|
|
7
|
+
import '../tool-OU7OZS0t.js';
|
|
8
8
|
|
|
9
9
|
declare function connectMcp(connection: McpConnection): Promise<McpServer>;
|
|
10
10
|
|
package/dist/memory/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { h as ToolDefinition, b as CompletionRequest, c as CompletionResponse, e as JsonValue, k as ToolResultContent } from './types-_boSLqrx.js';
|
|
2
2
|
import { V as VectorMetadata, E as EmbeddingModel, b as EmbeddedDocument } from './types-IB2e9u5M.js';
|
|
3
3
|
import { VectorSearchIndex } from './vector-store/index.js';
|
|
4
|
-
import { A as AnyTool, c as ToolCallContext, N as NormalizedToolOutput } from './tool-
|
|
4
|
+
import { A as AnyTool, c as ToolCallContext, N as NormalizedToolOutput } from './tool-OU7OZS0t.js';
|
|
5
5
|
|
|
6
6
|
declare class ToolSet {
|
|
7
7
|
private readonly tools;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { M as Message, b as CompletionRequest, J as JsonObject,
|
|
2
|
-
import { d as ToolCallStreamEvent } from '../tool-
|
|
1
|
+
import { M as Message, b as CompletionRequest, J as JsonObject, r as CompletionModelCapabilities, c as CompletionResponse, f as ToolCall, h as ToolDefinition, k as ToolResultContent, U as Usage } from '../types-_boSLqrx.js';
|
|
2
|
+
import { d as ToolCallStreamEvent } from '../tool-OU7OZS0t.js';
|
|
3
3
|
|
|
4
4
|
type AgentTraceInfo = {
|
|
5
5
|
traceId?: string | undefined;
|
package/dist/pipeline/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { e as Agent } from '../agent-
|
|
2
|
-
import { J as JsonObject, C as CompletionModel } from '../types-
|
|
1
|
+
import { e as Agent } from '../agent-BXsuZ7pi.js';
|
|
2
|
+
import { J as JsonObject, C as CompletionModel } from '../types-_boSLqrx.js';
|
|
3
3
|
import { Extractor } from '../extractor/index.js';
|
|
4
4
|
import '../memory/index.js';
|
|
5
5
|
import '../observability/index.js';
|
|
6
|
-
import '../tool-
|
|
7
|
-
import '../middleware-
|
|
6
|
+
import '../tool-OU7OZS0t.js';
|
|
7
|
+
import '../middleware-D6Wu0AcC.js';
|
|
8
8
|
import '../types-IB2e9u5M.js';
|
|
9
9
|
import '../vector-store/index.js';
|
|
10
10
|
import '../zod-schema-C7F4clpm.js';
|
package/dist/skills/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { b as SkillLoader, a as SkillSet } from '../types-
|
|
2
|
-
export { c as Skill, S as SkillValidationError, d as SkillValidationIssue } from '../types-
|
|
3
|
-
import '../tool-
|
|
4
|
-
import '../types-
|
|
1
|
+
import { b as SkillLoader, a as SkillSet } from '../types-Bpjngcxq.js';
|
|
2
|
+
export { c as Skill, S as SkillValidationError, d as SkillValidationIssue } from '../types-Bpjngcxq.js';
|
|
3
|
+
import '../tool-OU7OZS0t.js';
|
|
4
|
+
import '../types-_boSLqrx.js';
|
|
5
5
|
|
|
6
6
|
declare function loadSkills(loaders: SkillLoader | SkillLoader[]): Promise<SkillSet>;
|
|
7
7
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { Z as ZodSchema } from './zod-schema-C7F4clpm.js';
|
|
3
|
-
import { b as ToolApprovalPolicy, c as ToolCallContext, T as Tool } from './tool-
|
|
3
|
+
import { b as ToolApprovalPolicy, c as ToolCallContext, T as Tool } from './tool-OU7OZS0t.js';
|
|
4
4
|
|
|
5
5
|
type CreateToolOptions<InputSchema extends ZodSchema, OutputSchema extends ZodSchema | undefined = undefined, Output = unknown> = {
|
|
6
6
|
name: string;
|
package/dist/tool/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { b as CreateThinkToolOptions, C as CreateToolOptions, c as createThinkTool, a as createTool } from '../think-tool-
|
|
2
|
-
export { A as AgentMiddleware, C as CompletionRequestMiddlewareArgs, a as CompletionRequestMiddlewareResult, b as CompletionResponseMiddlewareArgs, c as CompletionResponseMiddlewareResult, D as DynamicToolIndex, E as EmbedToolsOptions, T as ToolInputMiddlewareArgs, d as ToolInputMiddlewareResult, e as ToolMiddleware, f as ToolOutputMiddlewareArgs, g as ToolOutputMiddlewareResult, h as ToolResultMiddlewareArgs, k as ToolSearchDocument, l as ToolSet, i as createMiddleware, m as createToolIndex, j as createToolMiddleware, n as embedTools, o as isDynamicToolIndex } from '../middleware-
|
|
3
|
-
export { A as AnyTool, N as NormalizedToolOutput, T as Tool, a as ToolApprovalContext, b as ToolApprovalPolicy, e as ToolApprovalRunContext, c as ToolCallContext, d as ToolCallStreamEvent, f as ToolOutput, i as isToolResultContentArray, n as normalizeToolResultOutput, p as parseToolArgs, s as serializeToolOutput, t as toolResultContentToText } from '../tool-
|
|
1
|
+
export { b as CreateThinkToolOptions, C as CreateToolOptions, c as createThinkTool, a as createTool } from '../think-tool-DTDGH1Q1.js';
|
|
2
|
+
export { A as AgentMiddleware, C as CompletionRequestMiddlewareArgs, a as CompletionRequestMiddlewareResult, b as CompletionResponseMiddlewareArgs, c as CompletionResponseMiddlewareResult, D as DynamicToolIndex, E as EmbedToolsOptions, T as ToolInputMiddlewareArgs, d as ToolInputMiddlewareResult, e as ToolMiddleware, f as ToolOutputMiddlewareArgs, g as ToolOutputMiddlewareResult, h as ToolResultMiddlewareArgs, k as ToolSearchDocument, l as ToolSet, i as createMiddleware, m as createToolIndex, j as createToolMiddleware, n as embedTools, o as isDynamicToolIndex } from '../middleware-D6Wu0AcC.js';
|
|
3
|
+
export { A as AnyTool, N as NormalizedToolOutput, T as Tool, a as ToolApprovalContext, b as ToolApprovalPolicy, e as ToolApprovalRunContext, c as ToolCallContext, d as ToolCallStreamEvent, f as ToolOutput, i as isToolResultContentArray, n as normalizeToolResultOutput, p as parseToolArgs, s as serializeToolOutput, t as toolResultContentToText } from '../tool-OU7OZS0t.js';
|
|
4
4
|
import 'zod';
|
|
5
5
|
import '../zod-schema-C7F4clpm.js';
|
|
6
|
-
import '../types-
|
|
6
|
+
import '../types-_boSLqrx.js';
|
|
7
7
|
import '../types-IB2e9u5M.js';
|
|
8
8
|
import '../vector-store/index.js';
|
|
9
9
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { J as JsonObject,
|
|
1
|
+
import { J as JsonObject, h as ToolDefinition, k as ToolResultContent, e as JsonValue } from './types-_boSLqrx.js';
|
|
2
2
|
|
|
3
3
|
type ToolApprovalRunContext = {
|
|
4
4
|
agentId: string;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { SSEClientTransportOptions } from '@modelcontextprotocol/sdk/client/sse.js';
|
|
2
2
|
import { StdioServerParameters } from '@modelcontextprotocol/sdk/client/stdio.js';
|
|
3
3
|
import { StreamableHTTPClientTransportOptions } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
4
|
-
import { J as JsonObject } from './types-
|
|
5
|
-
import { A as AnyTool } from './tool-
|
|
4
|
+
import { J as JsonObject } from './types-_boSLqrx.js';
|
|
5
|
+
import { A as AnyTool } from './tool-OU7OZS0t.js';
|
|
6
6
|
|
|
7
7
|
type McpToolDefinition = {
|
|
8
8
|
name: string;
|
|
@@ -153,6 +153,9 @@ declare const Message: {
|
|
|
153
153
|
user(content: string | UserContent[]): Message;
|
|
154
154
|
assistant(content: string | AssistantContent[], id?: string): Message;
|
|
155
155
|
tool(content: ToolContent | ToolContent[]): Message;
|
|
156
|
+
toolResult(id: string, output: unknown, options?: {
|
|
157
|
+
callId?: string | undefined;
|
|
158
|
+
}): Message;
|
|
156
159
|
};
|
|
157
160
|
type ToolChoice = "auto" | "required" | "none" | {
|
|
158
161
|
type: "function";
|
|
@@ -250,4 +253,4 @@ declare function assertCompletionRequestSupported(model: CompletionModel, reques
|
|
|
250
253
|
}): void;
|
|
251
254
|
declare function textFromAssistantContent(content: AssistantContent[]): string;
|
|
252
255
|
|
|
253
|
-
export { AssistantContent as A, type CompletionModel as C, type Document as D, type ImageContent as I, type JsonObject as J, Message as M, type Reasoning as R, type SystemMessage as S, type Text as T, Usage as U, type AssistantMessage as a, type CompletionRequest as b, type CompletionResponse as c, type JsonPrimitive as d, type JsonValue as e, type ToolCall as f, type ToolDefinition as
|
|
256
|
+
export { AssistantContent as A, type CompletionModel as C, type Document as D, type ImageContent as I, type JsonObject as J, Message as M, type Reasoning as R, type SystemMessage as S, type Text as T, Usage as U, type AssistantMessage as a, type CompletionRequest as b, type CompletionResponse as c, type JsonPrimitive as d, type JsonValue as e, type ToolCall as f, ToolContent as g, type ToolDefinition as h, type ToolMessage as i, type ToolResult as j, type ToolResultContent as k, UserContent as l, type UserMessage as m, type ToolChoice as n, type StreamingCompletionModel as o, type CompletionStreamEvent as p, CompletionCapabilityError as q, type CompletionModelCapabilities as r, type DocumentContent as s, type ImageDetail as t, type ReasoningContent as u, type ReasoningContentType as v, type ToolFunction as w, assertCompletionRequestSupported as x, reasoningDisplayText as y, textFromAssistantContent as z };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { d as VectorMetadataValue, V as VectorMetadata, E as EmbeddingModel, b as EmbeddedDocument, c as Embedding } from '../types-IB2e9u5M.js';
|
|
2
|
-
import { T as Tool } from '../tool-
|
|
3
|
-
import '../types-
|
|
2
|
+
import { T as Tool } from '../tool-OU7OZS0t.js';
|
|
3
|
+
import '../types-_boSLqrx.js';
|
|
4
4
|
|
|
5
5
|
type VectorFilter = {
|
|
6
6
|
type: "eq";
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/completion/types.ts","../src/completion/create-completion.ts","../src/completion/documents.ts","../src/completion/request.ts"],"sourcesContent":["export type JsonPrimitive = string | number | boolean | null;\nexport type JsonValue = JsonPrimitive | JsonObject | JsonValue[];\nexport type JsonObject = { [key: string]: JsonValue | undefined };\n\nexport type Document = {\n id: string;\n text: string;\n additionalProps?: Record<string, string>;\n};\n\nexport type Text = {\n type: \"text\";\n text: string;\n signature?: string;\n};\n\nexport type ImageDetail = \"auto\" | \"low\" | \"high\";\n\nexport type ImageContent = {\n type: \"image\";\n source:\n | {\n type: \"url\";\n url: string;\n }\n | {\n type: \"base64\";\n data: string;\n mediaType: string;\n };\n detail?: ImageDetail;\n};\n\nexport type DocumentContent = {\n type: \"document\";\n source:\n | {\n type: \"url\";\n url: string;\n mediaType: string;\n filename?: string;\n }\n | {\n type: \"base64\";\n data: string;\n mediaType: string;\n filename?: string;\n }\n | {\n type: \"text\";\n text: string;\n mediaType?: string;\n filename?: string;\n };\n};\n\nexport type Reasoning = {\n type: \"reasoning\";\n text: string;\n id?: string;\n content?: ReasoningContent[];\n};\n\nexport type ReasoningContent =\n | {\n type: \"text\";\n text: string;\n signature?: string;\n }\n | {\n type: \"summary\";\n text: string;\n }\n | {\n type: \"encrypted\";\n data: string;\n }\n | {\n type: \"redacted\";\n data: string;\n };\n\nexport type ReasoningContentType = ReasoningContent[\"type\"];\n\nexport type ToolFunction = {\n name: string;\n arguments: JsonValue;\n};\n\nexport type ToolCall = {\n type: \"tool_call\";\n id: string;\n callId?: string;\n function: ToolFunction;\n signature?: string;\n additionalParams?: JsonValue;\n};\n\nexport type ToolResultContent =\n | { type: \"text\"; text: string }\n | { type: \"image\"; data: string; mediaType?: string };\n\nexport type ToolResult = {\n type: \"tool_result\";\n id: string;\n callId?: string;\n content: ToolResultContent[];\n};\n\nexport type UserContent = Text | ImageContent | DocumentContent;\nexport type AssistantContent = Text | ToolCall | Reasoning | ImageContent;\nexport type ToolContent = ToolResult;\n\nexport type SystemMessage = {\n role: \"system\";\n content: string;\n};\n\nexport type UserMessage = {\n role: \"user\";\n content: UserContent[];\n};\n\nexport type AssistantMessage = {\n role: \"assistant\";\n id?: string;\n content: AssistantContent[];\n};\n\nexport type ToolMessage = {\n role: \"tool\";\n content: ToolContent[];\n};\n\nexport type Message = SystemMessage | UserMessage | AssistantMessage | ToolMessage;\n\nexport const UserContent = {\n text(text: string): Text {\n return { type: \"text\", text };\n },\n imageUrl(url: string, options: { detail?: ImageDetail } = {}): ImageContent {\n const image: ImageContent = { type: \"image\", source: { type: \"url\", url } };\n if (options.detail !== undefined) {\n image.detail = options.detail;\n }\n return image;\n },\n imageBase64(\n data: string,\n mediaType: string,\n options: { detail?: ImageDetail } = {},\n ): ImageContent {\n const image: ImageContent = {\n type: \"image\",\n source: { type: \"base64\", data, mediaType },\n };\n if (options.detail !== undefined) {\n image.detail = options.detail;\n }\n return image;\n },\n documentUrl(\n url: string,\n mediaType: string,\n options: { filename?: string | undefined } = {},\n ): DocumentContent {\n return {\n type: \"document\",\n source:\n options.filename === undefined\n ? { type: \"url\", url, mediaType }\n : { type: \"url\", url, mediaType, filename: options.filename },\n };\n },\n documentBase64(\n data: string,\n mediaType: string,\n options: { filename?: string | undefined } = {},\n ): DocumentContent {\n return {\n type: \"document\",\n source:\n options.filename === undefined\n ? { type: \"base64\", data, mediaType }\n : { type: \"base64\", data, mediaType, filename: options.filename },\n };\n },\n documentText(text: string): Text {\n return { type: \"text\", text };\n },\n};\n\nexport const ToolContent = {\n toolResult(id: string, content: string | ToolResultContent[], callId?: string): ToolResult {\n const normalized =\n typeof content === \"string\" ? [{ type: \"text\" as const, text: content }] : content;\n return callId === undefined\n ? { type: \"tool_result\", id, content: normalized }\n : { type: \"tool_result\", id, callId, content: normalized };\n },\n};\n\nexport const AssistantContent = {\n text(text: string): Text {\n return { type: \"text\", text };\n },\n imageUrl(url: string, options: { detail?: ImageDetail } = {}): ImageContent {\n const image: ImageContent = { type: \"image\", source: { type: \"url\", url } };\n if (options.detail !== undefined) {\n image.detail = options.detail;\n }\n return image;\n },\n imageBase64(\n data: string,\n mediaType: string,\n options: { detail?: ImageDetail } = {},\n ): ImageContent {\n const image: ImageContent = {\n type: \"image\",\n source: { type: \"base64\", data, mediaType },\n };\n if (options.detail !== undefined) {\n image.detail = options.detail;\n }\n return image;\n },\n reasoning(text: string, id?: string): Reasoning {\n return id === undefined ? { type: \"reasoning\", text } : { type: \"reasoning\", text, id };\n },\n reasoningFromContent(content: ReasoningContent[], id?: string): Reasoning {\n const text = reasoningDisplayText(content);\n const reasoning: Reasoning = { type: \"reasoning\", text, content };\n return id === undefined ? reasoning : { ...reasoning, id };\n },\n reasoningSummary(text: string, id?: string): Reasoning {\n return AssistantContent.reasoningFromContent([{ type: \"summary\", text }], id);\n },\n reasoningEncrypted(data: string, id?: string): Reasoning {\n return AssistantContent.reasoningFromContent([{ type: \"encrypted\", data }], id);\n },\n reasoningRedacted(data: string, id?: string): Reasoning {\n return AssistantContent.reasoningFromContent([{ type: \"redacted\", data }], id);\n },\n toolCall(id: string, name: string, args: JsonValue, callId?: string): ToolCall {\n const base: ToolCall = {\n type: \"tool_call\",\n id,\n function: {\n name,\n arguments: args,\n },\n };\n return callId === undefined ? base : { ...base, callId };\n },\n};\n\nexport function reasoningDisplayText(reasoning: Reasoning | ReasoningContent[]): string {\n const content = Array.isArray(reasoning) ? reasoning : reasoning.content;\n if (content === undefined) {\n return Array.isArray(reasoning) ? \"\" : reasoning.text;\n }\n return content\n .flatMap((item) => {\n if (item.type === \"text\" || item.type === \"summary\") {\n return [item.text];\n }\n return [];\n })\n .join(\"\");\n}\n\nexport const Message = {\n system(content: string): Message {\n return { role: \"system\", content };\n },\n user(content: string | UserContent[]): Message {\n return {\n role: \"user\",\n content: typeof content === \"string\" ? [UserContent.text(content)] : content,\n };\n },\n assistant(content: string | AssistantContent[], id?: string): Message {\n const normalized = typeof content === \"string\" ? [AssistantContent.text(content)] : content;\n return id === undefined\n ? { role: \"assistant\", content: normalized }\n : { role: \"assistant\", id, content: normalized };\n },\n tool(content: ToolContent | ToolContent[]): Message {\n return {\n role: \"tool\",\n content: Array.isArray(content) ? content : [content],\n };\n },\n};\n\nexport type ToolChoice =\n | \"auto\"\n | \"required\"\n | \"none\"\n | {\n type: \"function\";\n name: string;\n };\n\nexport type ToolDefinition = {\n name: string;\n description: string;\n parameters: JsonObject;\n};\n\nexport type Usage = {\n inputTokens: number;\n outputTokens: number;\n totalTokens: number;\n cachedInputTokens: number;\n cacheCreationInputTokens: number;\n};\n\nexport const Usage = {\n empty(): Usage {\n return {\n inputTokens: 0,\n outputTokens: 0,\n totalTokens: 0,\n cachedInputTokens: 0,\n cacheCreationInputTokens: 0,\n };\n },\n add(left: Usage, right: Usage): Usage {\n return {\n inputTokens: left.inputTokens + right.inputTokens,\n outputTokens: left.outputTokens + right.outputTokens,\n totalTokens: left.totalTokens + right.totalTokens,\n cachedInputTokens: left.cachedInputTokens + right.cachedInputTokens,\n cacheCreationInputTokens: left.cacheCreationInputTokens + right.cacheCreationInputTokens,\n };\n },\n};\n\nexport type CompletionRequest = {\n model?: string;\n instructions?: string;\n chatHistory: Message[];\n documents: Document[];\n tools: ToolDefinition[];\n temperature?: number;\n maxTokens?: number;\n toolChoice?: ToolChoice;\n additionalParams?: JsonValue;\n outputSchema?: JsonObject;\n};\n\nexport type CompletionResponse<RawResponse = unknown> = {\n choice: AssistantContent[];\n usage: Usage;\n rawResponse: RawResponse;\n messageId?: string;\n};\n\nexport type CompletionModelCapabilities = {\n streaming: boolean;\n tools: boolean;\n toolChoice: boolean;\n imageInput: boolean;\n documentInput: boolean;\n outputSchema: boolean;\n reasoning: boolean;\n};\n\nexport interface CompletionModel<RawResponse = unknown> {\n readonly provider: string;\n readonly defaultModel: string;\n readonly capabilities: CompletionModelCapabilities;\n traceRequest?(\n request: CompletionRequest,\n options?: { stream?: boolean | undefined },\n ): JsonObject | undefined;\n completion(request: CompletionRequest): Promise<CompletionResponse<RawResponse>>;\n}\n\nexport type CompletionStreamEvent<RawResponse = unknown> =\n | {\n type: \"text_delta\";\n delta: string;\n }\n | {\n type: \"reasoning_delta\";\n delta: string;\n id?: string;\n contentType?: ReasoningContentType;\n signature?: string;\n }\n | {\n type: \"tool_call_delta\";\n id: string;\n callId?: string;\n name?: string;\n argumentsDelta?: string;\n signature?: string;\n }\n | {\n type: \"tool_call\";\n toolCall: ToolCall;\n }\n | {\n type: \"message_id\";\n id: string;\n }\n | {\n type: \"final\";\n response: CompletionResponse<RawResponse>;\n }\n | {\n type: \"error\";\n error: unknown;\n };\n\nexport interface StreamingCompletionModel<RawResponse = unknown>\n extends CompletionModel<RawResponse> {\n streamCompletion(request: CompletionRequest): AsyncIterable<CompletionStreamEvent<RawResponse>>;\n}\n\nexport class CompletionCapabilityError extends Error {\n constructor(message: string) {\n super(message);\n this.name = \"CompletionCapabilityError\";\n }\n}\n\nexport function assertCompletionRequestSupported(\n model: CompletionModel,\n request: CompletionRequest,\n options: { streaming?: boolean | undefined } = {},\n): void {\n const modelLabel = `${model.provider}:${request.model ?? model.defaultModel}`;\n const capabilities = model.capabilities;\n\n if (options.streaming === true && !capabilities.streaming) {\n throw new CompletionCapabilityError(`${modelLabel} does not support streaming completions.`);\n }\n\n if (request.tools.length > 0 && !capabilities.tools) {\n throw new CompletionCapabilityError(`${modelLabel} does not support tool definitions.`);\n }\n\n if (request.toolChoice !== undefined && !capabilities.toolChoice) {\n throw new CompletionCapabilityError(`${modelLabel} does not support tool choice.`);\n }\n\n if (request.outputSchema !== undefined && !capabilities.outputSchema) {\n throw new CompletionCapabilityError(`${modelLabel} does not support output schemas.`);\n }\n\n if (!capabilities.imageInput && requestHasImageInput(request)) {\n throw new CompletionCapabilityError(`${modelLabel} does not support image input.`);\n }\n\n if (!capabilities.documentInput && requestHasFileDocumentInput(request)) {\n throw new CompletionCapabilityError(`${modelLabel} does not support document file input.`);\n }\n}\n\nexport function textFromAssistantContent(content: AssistantContent[]): string {\n return content.flatMap((item) => (item.type === \"text\" ? [item.text] : [])).join(\"\\n\");\n}\n\nfunction requestHasImageInput(request: CompletionRequest): boolean {\n return request.chatHistory.some((message) =>\n message.role === \"system\" ? false : message.content.some((content) => content.type === \"image\"),\n );\n}\n\nfunction requestHasFileDocumentInput(request: CompletionRequest): boolean {\n return request.chatHistory.some((message) =>\n message.role === \"user\"\n ? message.content.some(\n (content) => content.type === \"document\" && content.source.type !== \"text\",\n )\n : false,\n );\n}\n","import { toProviderJsonSchema, type ZodSchema } from \"../schema/zod-schema\";\nimport type {\n AssistantContent,\n CompletionModel,\n CompletionRequest,\n CompletionResponse,\n CompletionStreamEvent,\n Document,\n JsonObject,\n JsonValue,\n Message as MessageType,\n StreamingCompletionModel,\n ToolChoice,\n ToolDefinition,\n Usage,\n} from \"./types\";\nimport { assertCompletionRequestSupported, Message, textFromAssistantContent } from \"./types\";\n\nexport type CreateCompletionInput = string | MessageType | MessageType[];\n\nexport type CreateCompletionBaseOptions = {\n input?: CreateCompletionInput | undefined;\n messages?: MessageType[] | undefined;\n instructions?: string | undefined;\n documents?: Document[] | undefined;\n tools?: ToolDefinition[] | undefined;\n temperature?: number | undefined;\n maxTokens?: number | undefined;\n toolChoice?: ToolChoice | undefined;\n outputSchema?: JsonObject | undefined;\n params?: JsonValue | undefined;\n};\n\nexport type CreateCompletionOptions = CreateCompletionBaseOptions;\n\nexport type CreateCompletionStreamOptions = CreateCompletionBaseOptions;\n\nexport type CreateParsedCompletionOptions<T> = Omit<CreateCompletionBaseOptions, \"outputSchema\"> & {\n schema: ZodSchema<T>;\n};\n\nexport type CreateCompletionResult<RawResponse = unknown> = {\n text: string;\n content: AssistantContent[];\n usage: Usage;\n response: CompletionResponse<RawResponse>;\n};\n\nexport type CreateParsedCompletionResult<\n T,\n RawResponse = unknown,\n> = CreateCompletionResult<RawResponse> & {\n data: T;\n};\n\ntype RawResponseOf<Model> =\n Model extends CompletionModel<infer RawResponse> ? RawResponse : unknown;\n\nexport function createCompletion<Model extends CompletionModel>(\n model: Model,\n options: CreateCompletionOptions,\n): Promise<CreateCompletionResult<RawResponseOf<Model>>> {\n return sendCompletion(model, options);\n}\n\nexport function createCompletionStream<Model extends StreamingCompletionModel>(\n model: Model,\n options: CreateCompletionStreamOptions,\n): AsyncIterable<CompletionStreamEvent<RawResponseOf<Model>>> {\n const request = toCompletionRequest(options);\n if (!isStreamingCompletionModel(model) || !model.capabilities.streaming) {\n throw new Error(\"This completion model does not support streaming\");\n }\n assertCompletionRequestSupported(model, request, { streaming: true });\n return model.streamCompletion(request) as AsyncIterable<\n CompletionStreamEvent<RawResponseOf<Model>>\n >;\n}\n\nexport async function createParsedCompletion<T, Model extends CompletionModel>(\n model: Model,\n options: CreateParsedCompletionOptions<T>,\n): Promise<CreateParsedCompletionResult<T, RawResponseOf<Model>>> {\n const { schema, ...completionOptions } = options;\n const request = toCompletionRequest(\n {\n ...completionOptions,\n outputSchema: toProviderJsonSchema(schema),\n },\n \"createParsedCompletion\",\n );\n assertCompletionRequestSupported(model, request);\n const response = (await model.completion(request)) as CompletionResponse<RawResponseOf<Model>>;\n const text = textFromAssistantContent(response.choice);\n return {\n data: parseCompletionData(text, schema),\n text,\n content: response.choice,\n usage: response.usage,\n response,\n };\n}\n\nasync function sendCompletion<Model extends CompletionModel>(\n model: Model,\n options: CreateCompletionOptions,\n): Promise<CreateCompletionResult<RawResponseOf<Model>>> {\n const request = toCompletionRequest(options);\n assertCompletionRequestSupported(model, request);\n const response = (await model.completion(request)) as CompletionResponse<RawResponseOf<Model>>;\n return {\n text: textFromAssistantContent(response.choice),\n content: response.choice,\n usage: response.usage,\n response,\n };\n}\n\nfunction toCompletionRequest(\n options: CreateCompletionBaseOptions,\n helperName = \"createCompletion\",\n): CompletionRequest {\n const chatHistory = [...(options.messages ?? []), ...messagesFromInput(options.input)];\n\n if (chatHistory.length === 0) {\n throw new Error(`${helperName} requires input or messages.`);\n }\n\n const request: CompletionRequest = {\n chatHistory,\n documents: [...(options.documents ?? [])],\n tools: [...(options.tools ?? [])],\n };\n\n if (options.instructions !== undefined && options.instructions.length > 0) {\n request.instructions = options.instructions;\n }\n if (options.temperature !== undefined) request.temperature = options.temperature;\n if (options.maxTokens !== undefined) request.maxTokens = options.maxTokens;\n if (options.toolChoice !== undefined) request.toolChoice = options.toolChoice;\n if (options.outputSchema !== undefined) request.outputSchema = options.outputSchema;\n if (options.params !== undefined) request.additionalParams = options.params;\n\n return request;\n}\n\nfunction messagesFromInput(input: CreateCompletionInput | undefined): MessageType[] {\n if (input === undefined) {\n return [];\n }\n if (typeof input === \"string\") {\n return [Message.user(input)];\n }\n return Array.isArray(input) ? [...input] : [input];\n}\n\nfunction isStreamingCompletionModel(model: CompletionModel): model is StreamingCompletionModel {\n return typeof (model as { streamCompletion?: unknown }).streamCompletion === \"function\";\n}\n\nfunction parseCompletionData<T>(text: string, schema: ZodSchema<T>): T {\n let json: unknown;\n try {\n json = JSON.parse(text);\n } catch (error) {\n throw new Error(\"createParsedCompletion expected the model response to be valid JSON.\", {\n cause: error,\n });\n }\n\n return schema.parse(json);\n}\n","import { type Document, Message, type Message as MessageType } from \"./types\";\n\nexport function normalizeDocuments(documents: Document[]): MessageType | undefined {\n if (documents.length === 0) {\n return undefined;\n }\n\n return Message.user(documents.map(formatDocument).join(\"\\n\"));\n}\n\nexport function formatDocument(document: Document): string {\n return `<file id: ${document.id}>\\n${formatDocumentBody(document)}\\n</file>\\n`;\n}\n\nfunction formatDocumentBody(document: Document): string {\n const metadata = formatMetadata(document.additionalProps);\n return metadata === undefined ? document.text : `${metadata}\\n${document.text}`;\n}\n\nfunction formatMetadata(additionalProps: Record<string, string> | undefined): string | undefined {\n if (additionalProps === undefined) {\n return undefined;\n }\n\n const entries = Object.entries(additionalProps).sort(([left], [right]) =>\n left.localeCompare(right),\n );\n if (entries.length === 0) {\n return undefined;\n }\n\n const metadata = entries.map(([key, value]) => `${key}: ${JSON.stringify(value)}`).join(\" \");\n return `<metadata ${metadata} />`;\n}\n","import type {\n CompletionModel,\n CompletionRequest,\n CompletionResponse,\n Document,\n JsonObject,\n JsonValue,\n Message as MessageType,\n ToolChoice,\n ToolDefinition,\n} from \"./types\";\nimport { assertCompletionRequestSupported } from \"./types\";\n\nexport class CompletionRequestBuilder<M extends CompletionModel = CompletionModel> {\n private requestModel: string | undefined;\n private instructionBlocks: string[] = [];\n private history: MessageType[] = [];\n private docs: Document[] = [];\n private toolDefs: ToolDefinition[] = [];\n private temp: number | undefined;\n private maxTokenCount: number | undefined;\n private choice: ToolChoice | undefined;\n private params: JsonValue | undefined;\n private schema: JsonObject | undefined;\n\n constructor(\n private readonly model: M,\n private readonly promptMessage: MessageType,\n ) {}\n\n modelOverride(model: string | undefined): this {\n this.requestModel = model;\n return this;\n }\n\n instructions(instructions: string | undefined): this {\n if (instructions !== undefined && instructions.length > 0) {\n this.instructionBlocks.push(instructions);\n }\n return this;\n }\n\n messages(messages: MessageType[]): this {\n this.history.push(...messages);\n return this;\n }\n\n documents(documents: Document[]): this {\n this.docs.push(...documents);\n return this;\n }\n\n tools(tools: ToolDefinition[]): this {\n this.toolDefs.push(...tools);\n return this;\n }\n\n temperature(temperature: number | undefined): this {\n this.temp = temperature;\n return this;\n }\n\n maxTokens(maxTokens: number | undefined): this {\n this.maxTokenCount = maxTokens;\n return this;\n }\n\n toolChoice(toolChoice: ToolChoice | undefined): this {\n this.choice = toolChoice;\n return this;\n }\n\n additionalParams(additionalParams: JsonValue | undefined): this {\n this.params = additionalParams;\n return this;\n }\n\n outputSchema(outputSchema: JsonObject | undefined): this {\n this.schema = outputSchema;\n return this;\n }\n\n build(): CompletionRequest {\n const instructions = this.buildInstructions();\n const request: CompletionRequest = {\n chatHistory: [...this.history, this.promptMessage],\n documents: [...this.docs],\n tools: [...this.toolDefs],\n };\n\n if (this.requestModel !== undefined) request.model = this.requestModel;\n if (instructions !== undefined) request.instructions = instructions;\n if (this.temp !== undefined) request.temperature = this.temp;\n if (this.maxTokenCount !== undefined) request.maxTokens = this.maxTokenCount;\n if (this.choice !== undefined) request.toolChoice = this.choice;\n if (this.params !== undefined) request.additionalParams = this.params;\n if (this.schema !== undefined) request.outputSchema = this.schema;\n\n return request;\n }\n\n async send(): Promise<CompletionResponse> {\n const request = this.build();\n assertCompletionRequestSupported(this.model, request);\n return this.model.completion(request);\n }\n\n private buildInstructions(): string | undefined {\n return this.instructionBlocks.length === 0 ? undefined : this.instructionBlocks.join(\"\\n\\n\");\n }\n}\n"],"mappings":"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","names":[]}
|