@xiaozhiclaw/provider-core 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/aliyun-oss-file-upload-adapter.d.ts +44 -0
- package/dist/adapters/aliyun-oss-file-upload-adapter.js +96 -0
- package/dist/adapters/gemini-file-upload-adapter.d.ts +26 -0
- package/dist/adapters/gemini-file-upload-adapter.js +92 -0
- package/dist/adapters/hub-oss-file-upload-adapter.d.ts +29 -0
- package/dist/adapters/hub-oss-file-upload-adapter.js +53 -0
- package/dist/adapters/index.d.ts +10 -0
- package/dist/adapters/index.js +10 -0
- package/dist/adapters/openai-file-upload-adapter.d.ts +38 -0
- package/dist/adapters/openai-file-upload-adapter.js +56 -0
- package/dist/adapters/volcengine-file-upload-adapter.d.ts +24 -0
- package/dist/adapters/volcengine-file-upload-adapter.js +45 -0
- package/dist/builtin-providers.d.ts +8 -0
- package/dist/builtin-providers.js +2237 -0
- package/dist/constants.d.ts +1 -0
- package/dist/constants.js +1 -0
- package/dist/credentials.d.ts +1 -0
- package/dist/credentials.js +8 -0
- package/dist/debug-transport.d.ts +12 -0
- package/dist/debug-transport.js +99 -0
- package/dist/errors.d.ts +11 -0
- package/dist/errors.js +12 -0
- package/dist/events.d.ts +48 -0
- package/dist/events.js +1 -0
- package/dist/file-upload-service.d.ts +68 -0
- package/dist/file-upload-service.js +110 -0
- package/dist/gemini-schema-utils.d.ts +17 -0
- package/dist/gemini-schema-utils.js +76 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.js +33 -0
- package/dist/llm-client.d.ts +43 -0
- package/dist/llm-client.js +217 -0
- package/dist/media-client.d.ts +42 -0
- package/dist/media-client.js +174 -0
- package/dist/media-transport.d.ts +176 -0
- package/dist/media-transport.js +16 -0
- package/dist/media.d.ts +2 -0
- package/dist/media.js +1 -0
- package/dist/model-detection.d.ts +22 -0
- package/dist/model-detection.js +28 -0
- package/dist/paths.d.ts +2 -0
- package/dist/paths.js +11 -0
- package/dist/provider-def.d.ts +220 -0
- package/dist/provider-def.js +9 -0
- package/dist/provider-registry.d.ts +51 -0
- package/dist/provider-registry.js +130 -0
- package/dist/provider-tool-api.d.ts +44 -0
- package/dist/provider-tool-api.js +9 -0
- package/dist/provider-variant-resolver.d.ts +35 -0
- package/dist/provider-variant-resolver.js +174 -0
- package/dist/retry.d.ts +37 -0
- package/dist/retry.js +71 -0
- package/dist/transport.d.ts +281 -0
- package/dist/transport.js +27 -0
- package/dist/transports/anthropic-messages.d.ts +65 -0
- package/dist/transports/anthropic-messages.js +1004 -0
- package/dist/transports/gemini-cache-api.d.ts +86 -0
- package/dist/transports/gemini-cache-api.js +141 -0
- package/dist/transports/gemini-file-api.d.ts +90 -0
- package/dist/transports/gemini-file-api.js +164 -0
- package/dist/transports/gemini-generatecontent.d.ts +56 -0
- package/dist/transports/gemini-generatecontent.js +688 -0
- package/dist/transports/gemini-lyria-realtime.d.ts +117 -0
- package/dist/transports/gemini-lyria-realtime.js +295 -0
- package/dist/transports/gemini-media.d.ts +53 -0
- package/dist/transports/gemini-media.js +383 -0
- package/dist/transports/media-resolve.d.ts +50 -0
- package/dist/transports/media-resolve.js +91 -0
- package/dist/transports/minimax-media.d.ts +56 -0
- package/dist/transports/minimax-media.js +433 -0
- package/dist/transports/openai-chat.d.ts +81 -0
- package/dist/transports/openai-chat.js +782 -0
- package/dist/transports/openai-media.d.ts +24 -0
- package/dist/transports/openai-media.js +118 -0
- package/dist/transports/openai-responses.d.ts +63 -0
- package/dist/transports/openai-responses.js +778 -0
- package/dist/transports/qwen-media.d.ts +59 -0
- package/dist/transports/qwen-media.js +411 -0
- package/dist/transports/realtime-transport.d.ts +183 -0
- package/dist/transports/realtime-transport.js +332 -0
- package/dist/transports/volcengine-grounding.d.ts +58 -0
- package/dist/transports/volcengine-grounding.js +69 -0
- package/dist/transports/volcengine-media.d.ts +94 -0
- package/dist/transports/volcengine-media.js +801 -0
- package/dist/transports/volcengine-responses.d.ts +64 -0
- package/dist/transports/volcengine-responses.js +797 -0
- package/dist/transports/zhipu-media.d.ts +82 -0
- package/dist/transports/zhipu-media.js +522 -0
- package/dist/transports/zhipu-tool-api.d.ts +35 -0
- package/dist/transports/zhipu-tool-api.js +126 -0
- package/dist/wire-types.d.ts +51 -0
- package/dist/wire-types.js +1 -0
- package/package.json +33 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Volcengine Responses API TransportSSE streaming implementation.
|
|
3
|
+
*
|
|
4
|
+
* Implements the fire mountain ark Responses API (`/api/v3/responses`),
|
|
5
|
+
* which is the officially recommended primary path for Doubao LLM text generation
|
|
6
|
+
* (250615+ models: doubao-seed-2.0 series).
|
|
7
|
+
*
|
|
8
|
+
* Key differences from OpenAI Chat Completions:
|
|
9
|
+
* - Endpoint: POST {baseUrl}/v3/responses
|
|
10
|
+
* - Request body uses `input` (not `messages`), `instructions`, `thinking`, `reasoning`
|
|
11
|
+
* - SSE events: response.output_text.delta, response.reasoning_summary_text.delta,
|
|
12
|
+
* response.function_call_arguments.delta, response.completed, etc.
|
|
13
|
+
* - Tool calling: function_call / function_call_output with call_id
|
|
14
|
+
* - Context persistence: previous_response_id for server-side session continuation
|
|
15
|
+
* - Deep thinking: thinking.type (enabled/disabled/auto) + reasoning.effort
|
|
16
|
+
*
|
|
17
|
+
* Docs: https://www.volcengine.com/docs/82379/1399008
|
|
18
|
+
*/
|
|
19
|
+
import type { LLMChunk, LLMRequest, LLMTransport } from "../transport.js";
|
|
20
|
+
import type { ProviderQuirks } from "../provider-def.js";
|
|
21
|
+
import type { FileUploadAdapter } from "../file-upload-service.js";
|
|
22
|
+
export interface VolcengineResponsesTransportConfig {
|
|
23
|
+
baseUrl: string;
|
|
24
|
+
extraHeaders?: Record<string, string>;
|
|
25
|
+
timeoutMs?: number;
|
|
26
|
+
quirks?: ProviderQuirks;
|
|
27
|
+
/** File upload adapter for resolving local media URLs via upload instead of base64. */
|
|
28
|
+
fileUploadAdapter?: FileUploadAdapter;
|
|
29
|
+
}
|
|
30
|
+
export declare class VolcengineResponsesTransport implements LLMTransport {
|
|
31
|
+
private baseUrl;
|
|
32
|
+
private extraHeaders;
|
|
33
|
+
private timeoutMs;
|
|
34
|
+
private quirks;
|
|
35
|
+
private fileUploadAdapter?;
|
|
36
|
+
constructor(config: VolcengineResponsesTransportConfig);
|
|
37
|
+
stream(request: LLMRequest, apiKey: string, signal?: AbortSignal): AsyncGenerator<LLMChunk>;
|
|
38
|
+
/**
|
|
39
|
+
* Resolve known Volcengine Responses API incompatibilities:
|
|
40
|
+
* - instructions + caching 閳?drop caching (鎼?0.7)
|
|
41
|
+
* - caching + json_schema 閳?downgrade to json_object (鎼?0.10)
|
|
42
|
+
* - caching + builtin_web_search/image_process 閳?drop those builtin tools
|
|
43
|
+
* Returns a shallow copy with fields adjusted; never mutates the original.
|
|
44
|
+
*/
|
|
45
|
+
private resolveConstraints;
|
|
46
|
+
private buildRequestBody;
|
|
47
|
+
private fetchAndStream;
|
|
48
|
+
private handleNonStreamingResponse;
|
|
49
|
+
/**
|
|
50
|
+
* Parse Volcengine Responses API SSE stream.
|
|
51
|
+
*
|
|
52
|
+
* Event format: "event: <type>\ndata: <json>\n\n"
|
|
53
|
+
* Key events:
|
|
54
|
+
* - response.output_text.delta 閳?text content delta
|
|
55
|
+
* - response.reasoning_summary_text.delta 閳?thinking/reasoning text
|
|
56
|
+
* - response.function_call_arguments.delta 閳?tool call arguments streaming
|
|
57
|
+
* - response.output_item.added 閳?new output item started
|
|
58
|
+
* - response.output_item.done 閳?output item completed
|
|
59
|
+
* - response.completed 閳?full response complete with usage
|
|
60
|
+
* - response.failed 閳?error
|
|
61
|
+
*/
|
|
62
|
+
private parseSSEStream;
|
|
63
|
+
private processEvent;
|
|
64
|
+
}
|