@azure-rest/ai-inference 1.0.0-beta.2 → 1.0.0-beta.4
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/README.md +83 -4
- package/dist/browser/clientDefinitions.d.ts +3 -3
- package/dist/browser/clientDefinitions.d.ts.map +1 -1
- package/dist/browser/clientDefinitions.js +1 -1
- package/dist/browser/clientDefinitions.js.map +1 -1
- package/dist/browser/constants.d.ts +2 -0
- package/dist/browser/constants.d.ts.map +1 -0
- package/dist/browser/constants.js +4 -0
- package/dist/browser/constants.js.map +1 -0
- package/dist/browser/index.js +1 -1
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/isUnexpected.d.ts +1 -1
- package/dist/browser/isUnexpected.d.ts.map +1 -1
- package/dist/browser/isUnexpected.js +2 -3
- package/dist/browser/isUnexpected.js.map +1 -1
- package/dist/browser/logger.js +1 -1
- package/dist/browser/logger.js.map +1 -1
- package/dist/browser/modelClient.d.ts +3 -3
- package/dist/browser/modelClient.d.ts.map +1 -1
- package/dist/browser/modelClient.js +10 -3
- package/dist/browser/modelClient.js.map +1 -1
- package/dist/browser/models.d.ts +36 -35
- package/dist/browser/models.d.ts.map +1 -1
- package/dist/browser/models.js +1 -1
- package/dist/browser/models.js.map +1 -1
- package/dist/browser/outputModels.d.ts +17 -26
- package/dist/browser/outputModels.d.ts.map +1 -1
- package/dist/browser/outputModels.js +1 -1
- package/dist/browser/outputModels.js.map +1 -1
- package/dist/browser/parameters.d.ts +9 -3
- package/dist/browser/parameters.d.ts.map +1 -1
- package/dist/browser/parameters.js +1 -1
- package/dist/browser/parameters.js.map +1 -1
- package/dist/browser/responses.d.ts +3 -3
- package/dist/browser/responses.d.ts.map +1 -1
- package/dist/browser/responses.js +1 -1
- package/dist/browser/responses.js.map +1 -1
- package/dist/browser/tracingHelper.d.ts +9 -0
- package/dist/browser/tracingHelper.d.ts.map +1 -0
- package/dist/browser/tracingHelper.js +198 -0
- package/dist/browser/tracingHelper.js.map +1 -0
- package/dist/browser/tracingPolicy.d.ts +12 -0
- package/dist/browser/tracingPolicy.d.ts.map +1 -0
- package/dist/browser/tracingPolicy.js +68 -0
- package/dist/browser/tracingPolicy.js.map +1 -0
- package/dist/commonjs/clientDefinitions.d.ts +3 -3
- package/dist/commonjs/clientDefinitions.d.ts.map +1 -1
- package/dist/commonjs/clientDefinitions.js +1 -1
- package/dist/commonjs/clientDefinitions.js.map +1 -1
- package/dist/commonjs/constants.d.ts +2 -0
- package/dist/commonjs/constants.d.ts.map +1 -0
- package/dist/commonjs/constants.js +7 -0
- package/dist/commonjs/constants.js.map +1 -0
- package/dist/commonjs/index.js +1 -1
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/isUnexpected.d.ts +1 -1
- package/dist/commonjs/isUnexpected.d.ts.map +1 -1
- package/dist/commonjs/isUnexpected.js +2 -3
- package/dist/commonjs/isUnexpected.js.map +1 -1
- package/dist/commonjs/logger.js +1 -1
- package/dist/commonjs/logger.js.map +1 -1
- package/dist/commonjs/modelClient.d.ts +3 -3
- package/dist/commonjs/modelClient.d.ts.map +1 -1
- package/dist/commonjs/modelClient.js +9 -2
- package/dist/commonjs/modelClient.js.map +1 -1
- package/dist/commonjs/models.d.ts +36 -35
- package/dist/commonjs/models.d.ts.map +1 -1
- package/dist/commonjs/models.js +1 -1
- package/dist/commonjs/models.js.map +1 -1
- package/dist/commonjs/outputModels.d.ts +17 -26
- package/dist/commonjs/outputModels.d.ts.map +1 -1
- package/dist/commonjs/outputModels.js +1 -1
- package/dist/commonjs/outputModels.js.map +1 -1
- package/dist/commonjs/parameters.d.ts +9 -3
- package/dist/commonjs/parameters.d.ts.map +1 -1
- package/dist/commonjs/parameters.js +1 -1
- package/dist/commonjs/parameters.js.map +1 -1
- package/dist/commonjs/responses.d.ts +3 -3
- package/dist/commonjs/responses.d.ts.map +1 -1
- package/dist/commonjs/responses.js +1 -1
- package/dist/commonjs/responses.js.map +1 -1
- package/dist/commonjs/tracingHelper.d.ts +9 -0
- package/dist/commonjs/tracingHelper.d.ts.map +1 -0
- package/dist/commonjs/tracingHelper.js +205 -0
- package/dist/commonjs/tracingHelper.js.map +1 -0
- package/dist/commonjs/tracingPolicy.d.ts +12 -0
- package/dist/commonjs/tracingPolicy.d.ts.map +1 -0
- package/dist/commonjs/tracingPolicy.js +72 -0
- package/dist/commonjs/tracingPolicy.js.map +1 -0
- package/dist/commonjs/tsdoc-metadata.json +1 -1
- package/dist/esm/clientDefinitions.d.ts +3 -3
- package/dist/esm/clientDefinitions.d.ts.map +1 -1
- package/dist/esm/clientDefinitions.js +1 -1
- package/dist/esm/clientDefinitions.js.map +1 -1
- package/dist/esm/constants.d.ts +2 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +4 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/isUnexpected.d.ts +1 -1
- package/dist/esm/isUnexpected.d.ts.map +1 -1
- package/dist/esm/isUnexpected.js +2 -3
- package/dist/esm/isUnexpected.js.map +1 -1
- package/dist/esm/logger.js +1 -1
- package/dist/esm/logger.js.map +1 -1
- package/dist/esm/modelClient.d.ts +3 -3
- package/dist/esm/modelClient.d.ts.map +1 -1
- package/dist/esm/modelClient.js +10 -3
- package/dist/esm/modelClient.js.map +1 -1
- package/dist/esm/models.d.ts +36 -35
- package/dist/esm/models.d.ts.map +1 -1
- package/dist/esm/models.js +1 -1
- package/dist/esm/models.js.map +1 -1
- package/dist/esm/outputModels.d.ts +17 -26
- package/dist/esm/outputModels.d.ts.map +1 -1
- package/dist/esm/outputModels.js +1 -1
- package/dist/esm/outputModels.js.map +1 -1
- package/dist/esm/parameters.d.ts +9 -3
- package/dist/esm/parameters.d.ts.map +1 -1
- package/dist/esm/parameters.js +1 -1
- package/dist/esm/parameters.js.map +1 -1
- package/dist/esm/responses.d.ts +3 -3
- package/dist/esm/responses.d.ts.map +1 -1
- package/dist/esm/responses.js +1 -1
- package/dist/esm/responses.js.map +1 -1
- package/dist/esm/tracingHelper.d.ts +9 -0
- package/dist/esm/tracingHelper.d.ts.map +1 -0
- package/dist/esm/tracingHelper.js +198 -0
- package/dist/esm/tracingHelper.js.map +1 -0
- package/dist/esm/tracingPolicy.d.ts +12 -0
- package/dist/esm/tracingPolicy.d.ts.map +1 -0
- package/dist/esm/tracingPolicy.js +68 -0
- package/dist/esm/tracingPolicy.js.map +1 -0
- package/dist/react-native/clientDefinitions.d.ts +3 -3
- package/dist/react-native/clientDefinitions.d.ts.map +1 -1
- package/dist/react-native/clientDefinitions.js +1 -1
- package/dist/react-native/clientDefinitions.js.map +1 -1
- package/dist/react-native/constants.d.ts +2 -0
- package/dist/react-native/constants.d.ts.map +1 -0
- package/dist/react-native/constants.js +4 -0
- package/dist/react-native/constants.js.map +1 -0
- package/dist/react-native/index.js +1 -1
- package/dist/react-native/index.js.map +1 -1
- package/dist/react-native/isUnexpected.d.ts +1 -1
- package/dist/react-native/isUnexpected.d.ts.map +1 -1
- package/dist/react-native/isUnexpected.js +2 -3
- package/dist/react-native/isUnexpected.js.map +1 -1
- package/dist/react-native/logger.js +1 -1
- package/dist/react-native/logger.js.map +1 -1
- package/dist/react-native/modelClient.d.ts +3 -3
- package/dist/react-native/modelClient.d.ts.map +1 -1
- package/dist/react-native/modelClient.js +10 -3
- package/dist/react-native/modelClient.js.map +1 -1
- package/dist/react-native/models.d.ts +36 -35
- package/dist/react-native/models.d.ts.map +1 -1
- package/dist/react-native/models.js +1 -1
- package/dist/react-native/models.js.map +1 -1
- package/dist/react-native/outputModels.d.ts +17 -26
- package/dist/react-native/outputModels.d.ts.map +1 -1
- package/dist/react-native/outputModels.js +1 -1
- package/dist/react-native/outputModels.js.map +1 -1
- package/dist/react-native/parameters.d.ts +9 -3
- package/dist/react-native/parameters.d.ts.map +1 -1
- package/dist/react-native/parameters.js +1 -1
- package/dist/react-native/parameters.js.map +1 -1
- package/dist/react-native/responses.d.ts +3 -3
- package/dist/react-native/responses.d.ts.map +1 -1
- package/dist/react-native/responses.js +1 -1
- package/dist/react-native/responses.js.map +1 -1
- package/dist/react-native/tracingHelper.d.ts +9 -0
- package/dist/react-native/tracingHelper.d.ts.map +1 -0
- package/dist/react-native/tracingHelper.js +198 -0
- package/dist/react-native/tracingHelper.js.map +1 -0
- package/dist/react-native/tracingPolicy.d.ts +12 -0
- package/dist/react-native/tracingPolicy.d.ts.map +1 -0
- package/dist/react-native/tracingPolicy.js +68 -0
- package/dist/react-native/tracingPolicy.js.map +1 -0
- package/package.json +25 -29
package/README.md
CHANGED
|
@@ -223,7 +223,7 @@ async function main(){
|
|
|
223
223
|
}
|
|
224
224
|
for (const choice of response.body.choices) {
|
|
225
225
|
const completion = choice.message.content;
|
|
226
|
-
console.log(`Input: ${
|
|
226
|
+
console.log(`Input: ${messages[promptIndex++].content}`);
|
|
227
227
|
console.log(`Chatbot: ${completion}`);
|
|
228
228
|
}
|
|
229
229
|
}
|
|
@@ -251,7 +251,7 @@ async function main(){
|
|
|
251
251
|
""As a layman I would say: 'I think we have it'. Would you agree?"" Rolf-Dieter Heuer, CERN's director-general, asked the packed auditorium. The physicists assembled there burst into applause.
|
|
252
252
|
:`;
|
|
253
253
|
|
|
254
|
-
const summarizationPrompt =
|
|
254
|
+
const summarizationPrompt = `
|
|
255
255
|
Summarize the following text.
|
|
256
256
|
|
|
257
257
|
Text:
|
|
@@ -260,7 +260,7 @@ async function main(){
|
|
|
260
260
|
""""""
|
|
261
261
|
|
|
262
262
|
Summary:
|
|
263
|
-
|
|
263
|
+
`;
|
|
264
264
|
|
|
265
265
|
console.log(`Input: ${summarizationPrompt}`);
|
|
266
266
|
|
|
@@ -354,7 +354,7 @@ context -- including the original system and user messages, the response from th
|
|
|
354
354
|
calls, and the tool messages that resolved each of those tools -- when making a subsequent request.
|
|
355
355
|
|
|
356
356
|
```js
|
|
357
|
-
const choice = result.choices[0];
|
|
357
|
+
const choice = result.body.choices[0];
|
|
358
358
|
const responseMessage = choice.message;
|
|
359
359
|
if (responseMessage?.role === "assistant") {
|
|
360
360
|
const requestedToolCalls = responseMessage?.toolCalls;
|
|
@@ -446,6 +446,85 @@ data: length=1024, [0.04196167, 0.029083252, ..., -0.0027484894, 0.0073127747]
|
|
|
446
446
|
|
|
447
447
|
To generate embeddings for additional phrases, simply call `client.path("/embeddings").post` multiple times using the same `client`.
|
|
448
448
|
|
|
449
|
+
### Instrumentation
|
|
450
|
+
Currently instrumentation is only supported for `Chat Completion without streaming`.
|
|
451
|
+
To enable instrumentation, it is required to register exporter(s).
|
|
452
|
+
|
|
453
|
+
Here is an example to add console as a exporter:
|
|
454
|
+
```js
|
|
455
|
+
import { ConsoleSpanExporter, NodeTracerProvider, SimpleSpanProcessor } from "@opentelemetry/sdk-trace-node";
|
|
456
|
+
|
|
457
|
+
const provider = new NodeTracerProvider();
|
|
458
|
+
provider.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter()));
|
|
459
|
+
provider.register();
|
|
460
|
+
|
|
461
|
+
```
|
|
462
|
+
|
|
463
|
+
Here is an example to add application insight to be a exporter:
|
|
464
|
+
|
|
465
|
+
```js
|
|
466
|
+
import { NodeTracerProvider, SimpleSpanProcessor } from "@opentelemetry/sdk-trace-node";
|
|
467
|
+
import { AzureMonitorTraceExporter } from "@azure/monitor-opentelemetry-exporter";
|
|
468
|
+
|
|
469
|
+
// provide a connection string
|
|
470
|
+
const connectionString = "<connection string>";
|
|
471
|
+
|
|
472
|
+
const provider = new NodeTracerProvider();
|
|
473
|
+
if (connectionString) {
|
|
474
|
+
const exporter = new AzureMonitorTraceExporter({ connectionString });
|
|
475
|
+
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
|
|
476
|
+
}
|
|
477
|
+
provider.register();
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
To use instrumentation for Azure SDK, you need to register it before importing any dependencies from `@azure/core-tracing`, such as `@azure-rest/ai-inference`.
|
|
481
|
+
|
|
482
|
+
```js
|
|
483
|
+
import { registerInstrumentations } from "@opentelemetry/instrumentation";
|
|
484
|
+
import { createAzureSdkInstrumentation } from "@azure/opentelemetry-instrumentation-azure-sdk";
|
|
485
|
+
|
|
486
|
+
registerInstrumentations({
|
|
487
|
+
instrumentations: [createAzureSdkInstrumentation()],
|
|
488
|
+
});
|
|
489
|
+
|
|
490
|
+
import ModelClient from "@azure-rest/ai-inference";
|
|
491
|
+
```
|
|
492
|
+
|
|
493
|
+
Finally when you are making a call for chat completion, you need to include
|
|
494
|
+
```js
|
|
495
|
+
tracingOptions: { tracingContext: context.active() }
|
|
496
|
+
```
|
|
497
|
+
Here is an example:
|
|
498
|
+
|
|
499
|
+
```js
|
|
500
|
+
import { context } from "@opentelemetry/api";
|
|
501
|
+
client.path("/chat/completions").post({
|
|
502
|
+
body: {...},
|
|
503
|
+
tracingOptions: { tracingContext: context.active() }
|
|
504
|
+
});
|
|
505
|
+
```
|
|
506
|
+
|
|
507
|
+
### Tracing Your Own Functions
|
|
508
|
+
Open Telemetry provides `startActiveSpan` to instrument you own code. Here is an example:
|
|
509
|
+
|
|
510
|
+
```js
|
|
511
|
+
import { trace } from "@opentelemetry/api";
|
|
512
|
+
const tracer = trace.getTracer("sample", "0.1.0");
|
|
513
|
+
|
|
514
|
+
const getWeatherFunc = (location: string, unit: string): string => {
|
|
515
|
+
return tracer.startActiveSpan("getWeatherFunc", span => {
|
|
516
|
+
if (unit !== "celsius") {
|
|
517
|
+
unit = "fahrenheit";
|
|
518
|
+
}
|
|
519
|
+
const result = `The temperature in ${location} is 72 degrees ${unit}`;
|
|
520
|
+
span.setAttribute("result", result);
|
|
521
|
+
span.end();
|
|
522
|
+
return result;
|
|
523
|
+
});
|
|
524
|
+
}
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
|
|
449
528
|
## Troubleshooting
|
|
450
529
|
|
|
451
530
|
### Logging
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { GetChatCompletionsParameters, GetModelInfoParameters, GetEmbeddingsParameters, GetImageEmbeddingsParameters } from "./parameters.js";
|
|
2
|
-
import { GetChatCompletions200Response, GetChatCompletionsDefaultResponse, GetModelInfo200Response, GetModelInfoDefaultResponse, GetEmbeddings200Response, GetEmbeddingsDefaultResponse, GetImageEmbeddings200Response, GetImageEmbeddingsDefaultResponse } from "./responses.js";
|
|
3
|
-
import { Client, StreamableMethod } from "@azure-rest/core-client";
|
|
1
|
+
import type { GetChatCompletionsParameters, GetModelInfoParameters, GetEmbeddingsParameters, GetImageEmbeddingsParameters } from "./parameters.js";
|
|
2
|
+
import type { GetChatCompletions200Response, GetChatCompletionsDefaultResponse, GetModelInfo200Response, GetModelInfoDefaultResponse, GetEmbeddings200Response, GetEmbeddingsDefaultResponse, GetImageEmbeddings200Response, GetImageEmbeddingsDefaultResponse } from "./responses.js";
|
|
3
|
+
import type { Client, StreamableMethod } from "@azure-rest/core-client";
|
|
4
4
|
export interface GetChatCompletions {
|
|
5
5
|
/**
|
|
6
6
|
* Gets chat completions for the provided chat messages.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientDefinitions.d.ts","sourceRoot":"","sources":["../../src/clientDefinitions.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"clientDefinitions.d.ts","sourceRoot":"","sources":["../../src/clientDefinitions.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,4BAA4B,EAC5B,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,EAC7B,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EACV,6BAA6B,EAC7B,iCAAiC,EACjC,uBAAuB,EACvB,2BAA2B,EAC3B,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,iCAAiC,EAClC,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAExE,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,IAAI,CACF,OAAO,CAAC,EAAE,4BAA4B,GACrC,gBAAgB,CAAC,6BAA6B,GAAG,iCAAiC,CAAC,CAAC;CACxF;AAED,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,GAAG,CACD,OAAO,CAAC,EAAE,sBAAsB,GAC/B,gBAAgB,CAAC,uBAAuB,GAAG,2BAA2B,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,IAAI,CACF,OAAO,CAAC,EAAE,uBAAuB,GAChC,gBAAgB,CAAC,wBAAwB,GAAG,4BAA4B,CAAC,CAAC;CAC9E;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,IAAI,CACF,OAAO,CAAC,EAAE,4BAA4B,GACrC,gBAAgB,CAAC,6BAA6B,GAAG,iCAAiC,CAAC,CAAC;CACxF;AAED,MAAM,WAAW,MAAM;IACrB,iFAAiF;IACjF,CAAC,IAAI,EAAE,mBAAmB,GAAG,kBAAkB,CAAC;IAChD,oEAAoE;IACpE,CAAC,IAAI,EAAE,OAAO,GAAG,YAAY,CAAC;IAC9B,2EAA2E;IAC3E,CAAC,IAAI,EAAE,aAAa,GAAG,aAAa,CAAC;IACrC,kFAAkF;IAClF,CAAC,IAAI,EAAE,oBAAoB,GAAG,kBAAkB,CAAC;CAClD;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;CACd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientDefinitions.js","sourceRoot":"","sources":["../../src/clientDefinitions.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT
|
|
1
|
+
{"version":3,"file":"clientDefinitions.js","sourceRoot":"","sources":["../../src/clientDefinitions.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n GetChatCompletionsParameters,\n GetModelInfoParameters,\n GetEmbeddingsParameters,\n GetImageEmbeddingsParameters,\n} from \"./parameters.js\";\nimport type {\n GetChatCompletions200Response,\n GetChatCompletionsDefaultResponse,\n GetModelInfo200Response,\n GetModelInfoDefaultResponse,\n GetEmbeddings200Response,\n GetEmbeddingsDefaultResponse,\n GetImageEmbeddings200Response,\n GetImageEmbeddingsDefaultResponse,\n} from \"./responses.js\";\nimport type { Client, StreamableMethod } from \"@azure-rest/core-client\";\n\nexport interface GetChatCompletions {\n /**\n * Gets chat completions for the provided chat messages.\n * Completions support a wide variety of tasks and generate text that continues from or \"completes\"\n * provided prompt data. The method makes a REST API call to the `/chat/completions` route\n * on the given endpoint.\n */\n post(\n options?: GetChatCompletionsParameters,\n ): StreamableMethod<GetChatCompletions200Response | GetChatCompletionsDefaultResponse>;\n}\n\nexport interface GetModelInfo {\n /**\n * Returns information about the AI model.\n * The method makes a REST API call to the `/info` route on the given endpoint.\n */\n get(\n options?: GetModelInfoParameters,\n ): StreamableMethod<GetModelInfo200Response | GetModelInfoDefaultResponse>;\n}\n\nexport interface GetEmbeddings {\n /**\n * Return the embedding vectors for given text prompts.\n * The method makes a REST API call to the `/embeddings` route on the given endpoint.\n */\n post(\n options?: GetEmbeddingsParameters,\n ): StreamableMethod<GetEmbeddings200Response | GetEmbeddingsDefaultResponse>;\n}\n\nexport interface GetImageEmbeddings {\n /**\n * Return the embedding vectors for given images.\n * The method makes a REST API call to the `/images/embeddings` route on the given endpoint.\n */\n post(\n options?: GetImageEmbeddingsParameters,\n ): StreamableMethod<GetImageEmbeddings200Response | GetImageEmbeddingsDefaultResponse>;\n}\n\nexport interface Routes {\n /** Resource for '/chat/completions' has methods for the following verbs: post */\n (path: \"/chat/completions\"): GetChatCompletions;\n /** Resource for '/info' has methods for the following verbs: get */\n (path: \"/info\"): GetModelInfo;\n /** Resource for '/embeddings' has methods for the following verbs: post */\n (path: \"/embeddings\"): GetEmbeddings;\n /** Resource for '/images/embeddings' has methods for the following verbs: post */\n (path: \"/images/embeddings\"): GetImageEmbeddings;\n}\n\nexport type ModelClient = Client & {\n path: Routes;\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,EAAE,MAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,MAAM,CAAC,MAAM,WAAW,GAAW,cAAc,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport const SDK_VERSION: string = \"1.0.0-beta.4\";\n"]}
|
package/dist/browser/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAElC,eAAe,WAAW,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAElC,eAAe,WAAW,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport ModelClient from \"./modelClient.js\";\n\nexport * from \"./modelClient.js\";\nexport * from \"./parameters.js\";\nexport * from \"./responses.js\";\nexport * from \"./clientDefinitions.js\";\nexport * from \"./isUnexpected.js\";\nexport * from \"./models.js\";\nexport * from \"./outputModels.js\";\n\nexport default ModelClient;\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GetChatCompletions200Response, GetChatCompletionsDefaultResponse, GetModelInfo200Response, GetModelInfoDefaultResponse, GetEmbeddings200Response, GetEmbeddingsDefaultResponse, GetImageEmbeddings200Response, GetImageEmbeddingsDefaultResponse } from "./responses.js";
|
|
1
|
+
import type { GetChatCompletions200Response, GetChatCompletionsDefaultResponse, GetModelInfo200Response, GetModelInfoDefaultResponse, GetEmbeddings200Response, GetEmbeddingsDefaultResponse, GetImageEmbeddings200Response, GetImageEmbeddingsDefaultResponse } from "./responses.js";
|
|
2
2
|
export declare function isUnexpected(response: GetChatCompletions200Response | GetChatCompletionsDefaultResponse): response is GetChatCompletionsDefaultResponse;
|
|
3
3
|
export declare function isUnexpected(response: GetModelInfo200Response | GetModelInfoDefaultResponse): response is GetModelInfoDefaultResponse;
|
|
4
4
|
export declare function isUnexpected(response: GetEmbeddings200Response | GetEmbeddingsDefaultResponse): response is GetEmbeddingsDefaultResponse;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isUnexpected.d.ts","sourceRoot":"","sources":["../../src/isUnexpected.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"isUnexpected.d.ts","sourceRoot":"","sources":["../../src/isUnexpected.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,6BAA6B,EAC7B,iCAAiC,EACjC,uBAAuB,EACvB,2BAA2B,EAC3B,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,iCAAiC,EAClC,MAAM,gBAAgB,CAAC;AASxB,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,6BAA6B,GAAG,iCAAiC,GAC1E,QAAQ,IAAI,iCAAiC,CAAC;AACjD,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,uBAAuB,GAAG,2BAA2B,GAC9D,QAAQ,IAAI,2BAA2B,CAAC;AAC3C,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,wBAAwB,GAAG,4BAA4B,GAChE,QAAQ,IAAI,4BAA4B,CAAC;AAC5C,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,6BAA6B,GAAG,iCAAiC,GAC1E,QAAQ,IAAI,iCAAiC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
|
-
// Licensed under the MIT
|
|
2
|
+
// Licensed under the MIT License.
|
|
3
3
|
const responseMap = {
|
|
4
4
|
"POST /chat/completions": ["200"],
|
|
5
5
|
"GET /info": ["200"],
|
|
@@ -36,8 +36,7 @@ function getParametrizedPathSuccess(method, path) {
|
|
|
36
36
|
// track if we have found a match to return the values found.
|
|
37
37
|
let found = true;
|
|
38
38
|
for (let i = candidateParts.length - 1, j = pathParts.length - 1; i >= 1 && j >= 1; i--, j--) {
|
|
39
|
-
if (((_a = candidateParts[i]) === null || _a === void 0 ? void 0 : _a.startsWith("{")) &&
|
|
40
|
-
((_b = candidateParts[i]) === null || _b === void 0 ? void 0 : _b.indexOf("}")) !== -1) {
|
|
39
|
+
if (((_a = candidateParts[i]) === null || _a === void 0 ? void 0 : _a.startsWith("{")) && ((_b = candidateParts[i]) === null || _b === void 0 ? void 0 : _b.indexOf("}")) !== -1) {
|
|
41
40
|
const start = candidateParts[i].indexOf("}") + 1, end = (_c = candidateParts[i]) === null || _c === void 0 ? void 0 : _c.length;
|
|
42
41
|
// If the current part of the candidate is a "template" part
|
|
43
42
|
// Try to use the suffix of pattern to match the path
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isUnexpected.js","sourceRoot":"","sources":["../../src/isUnexpected.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAalC,MAAM,WAAW,GAA6B;IAC5C,wBAAwB,EAAE,CAAC,KAAK,CAAC;IACjC,WAAW,EAAE,CAAC,KAAK,CAAC;IACpB,kBAAkB,EAAE,CAAC,KAAK,CAAC;IAC3B,yBAAyB,EAAE,CAAC,KAAK,CAAC;CACnC,CAAC;AAcF,MAAM,UAAU,YAAY,CAC1B,QAQqC;IAMrC,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC1D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;IACvC,IAAI,WAAW,GAAG,WAAW,CAAC,GAAG,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,WAAW,GAAG,0BAA0B,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,0BAA0B,CAAC,MAAc,EAAE,IAAY;;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAElC,+CAA+C;IAC/C,2CAA2C;IAC3C,8CAA8C;IAC9C,IAAI,UAAU,GAAG,CAAC,CAAC,EACjB,YAAY,GAAa,EAAE,CAAC;IAE9B,0CAA0C;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACvD,0DAA0D;QAC1D,gBAAgB;QAChB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,SAAS;QACX,CAAC;QACD,MAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC7C,gCAAgC;QAChC,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEhD,6DAA6D;QAC7D,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,
|
|
1
|
+
{"version":3,"file":"isUnexpected.js","sourceRoot":"","sources":["../../src/isUnexpected.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n GetChatCompletions200Response,\n GetChatCompletionsDefaultResponse,\n GetModelInfo200Response,\n GetModelInfoDefaultResponse,\n GetEmbeddings200Response,\n GetEmbeddingsDefaultResponse,\n GetImageEmbeddings200Response,\n GetImageEmbeddingsDefaultResponse,\n} from \"./responses.js\";\n\nconst responseMap: Record<string, string[]> = {\n \"POST /chat/completions\": [\"200\"],\n \"GET /info\": [\"200\"],\n \"POST /embeddings\": [\"200\"],\n \"POST /images/embeddings\": [\"200\"],\n};\n\nexport function isUnexpected(\n response: GetChatCompletions200Response | GetChatCompletionsDefaultResponse,\n): response is GetChatCompletionsDefaultResponse;\nexport function isUnexpected(\n response: GetModelInfo200Response | GetModelInfoDefaultResponse,\n): response is GetModelInfoDefaultResponse;\nexport function isUnexpected(\n response: GetEmbeddings200Response | GetEmbeddingsDefaultResponse,\n): response is GetEmbeddingsDefaultResponse;\nexport function isUnexpected(\n response: GetImageEmbeddings200Response | GetImageEmbeddingsDefaultResponse,\n): response is GetImageEmbeddingsDefaultResponse;\nexport function isUnexpected(\n response:\n | GetChatCompletions200Response\n | GetChatCompletionsDefaultResponse\n | GetModelInfo200Response\n | GetModelInfoDefaultResponse\n | GetEmbeddings200Response\n | GetEmbeddingsDefaultResponse\n | GetImageEmbeddings200Response\n | GetImageEmbeddingsDefaultResponse,\n): response is\n | GetChatCompletionsDefaultResponse\n | GetModelInfoDefaultResponse\n | GetEmbeddingsDefaultResponse\n | GetImageEmbeddingsDefaultResponse {\n const lroOriginal = response.headers[\"x-ms-original-url\"];\n const url = new URL(lroOriginal ?? response.request.url);\n const method = response.request.method;\n let pathDetails = responseMap[`${method} ${url.pathname}`];\n if (!pathDetails) {\n pathDetails = getParametrizedPathSuccess(method, url.pathname);\n }\n return !pathDetails.includes(response.status);\n}\n\nfunction getParametrizedPathSuccess(method: string, path: string): string[] {\n const pathParts = path.split(\"/\");\n\n // Traverse list to match the longest candidate\n // matchedLen: the length of candidate path\n // matchedValue: the matched status code array\n let matchedLen = -1,\n matchedValue: string[] = [];\n\n // Iterate the responseMap to find a match\n for (const [key, value] of Object.entries(responseMap)) {\n // Extracting the path from the map key which is in format\n // GET /path/foo\n if (!key.startsWith(method)) {\n continue;\n }\n const candidatePath = getPathFromMapKey(key);\n // Get each part of the url path\n const candidateParts = candidatePath.split(\"/\");\n\n // track if we have found a match to return the values found.\n let found = true;\n for (let i = candidateParts.length - 1, j = pathParts.length - 1; i >= 1 && j >= 1; i--, j--) {\n if (candidateParts[i]?.startsWith(\"{\") && candidateParts[i]?.indexOf(\"}\") !== -1) {\n const start = candidateParts[i]!.indexOf(\"}\") + 1,\n end = candidateParts[i]?.length;\n // If the current part of the candidate is a \"template\" part\n // Try to use the suffix of pattern to match the path\n // {guid} ==> $\n // {guid}:export ==> :export$\n const isMatched = new RegExp(`${candidateParts[i]?.slice(start, end)}`).test(\n pathParts[j] || \"\",\n );\n\n if (!isMatched) {\n found = false;\n break;\n }\n continue;\n }\n\n // If the candidate part is not a template and\n // the parts don't match mark the candidate as not found\n // to move on with the next candidate path.\n if (candidateParts[i] !== pathParts[j]) {\n found = false;\n break;\n }\n }\n\n // We finished evaluating the current candidate parts\n // Update the matched value if and only if we found the longer pattern\n if (found && candidatePath.length > matchedLen) {\n matchedLen = candidatePath.length;\n matchedValue = value;\n }\n }\n\n return matchedValue;\n}\n\nfunction getPathFromMapKey(mapKey: string): string {\n const pathStart = mapKey.indexOf(\"/\");\n return mapKey.slice(pathStart);\n}\n"]}
|
package/dist/browser/logger.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,MAAM,CAAC,MAAM,MAAM,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,MAAM,CAAC,MAAM,MAAM,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createClientLogger } from \"@azure/logger\";\nexport const logger = createClientLogger(\"ai-inference\");\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ClientOptions } from "@azure-rest/core-client";
|
|
2
|
-
import { TokenCredential, KeyCredential } from "@azure/core-auth";
|
|
3
|
-
import { ModelClient } from "./clientDefinitions.js";
|
|
1
|
+
import type { ClientOptions } from "@azure-rest/core-client";
|
|
2
|
+
import type { TokenCredential, KeyCredential } from "@azure/core-auth";
|
|
3
|
+
import type { ModelClient } from "./clientDefinitions.js";
|
|
4
4
|
/** The optional parameters for the client */
|
|
5
5
|
export interface ModelClientOptions extends ClientOptions {
|
|
6
6
|
/** The api version option of the client */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modelClient.d.ts","sourceRoot":"","sources":["../../src/modelClient.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"modelClient.d.ts","sourceRoot":"","sources":["../../src/modelClient.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAG1D,6CAA6C;AAC7C,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,eAAe,GAAG,aAAa,EAC5C,EAAE,UAAiC,EAAE,GAAG,OAAO,EAAE,GAAE,kBAAuB,GACzE,WAAW,CAwDb"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
|
-
// Licensed under the MIT
|
|
2
|
+
// Licensed under the MIT License.
|
|
3
3
|
import { __rest } from "tslib";
|
|
4
4
|
import { getClient } from "@azure-rest/core-client";
|
|
5
5
|
import { logger } from "./logger.js";
|
|
6
|
-
import { isKeyCredential
|
|
6
|
+
import { isKeyCredential } from "@azure/core-auth";
|
|
7
|
+
import { tracingPolicy } from "./tracingPolicy.js";
|
|
7
8
|
/**
|
|
8
9
|
* Initialize a new instance of `ModelClient`
|
|
9
10
|
* @param endpointParam - The parameter endpointParam
|
|
@@ -14,7 +15,7 @@ export default function createClient(endpointParam, credentials, _a = {}) {
|
|
|
14
15
|
var _b, _c, _d, _e, _f, _g, _h, _j;
|
|
15
16
|
var { apiVersion = "2024-05-01-preview" } = _a, options = __rest(_a, ["apiVersion"]);
|
|
16
17
|
const endpointUrl = (_c = (_b = options.endpoint) !== null && _b !== void 0 ? _b : options.baseUrl) !== null && _c !== void 0 ? _c : `${endpointParam}`;
|
|
17
|
-
const userAgentInfo = `azsdk-js-
|
|
18
|
+
const userAgentInfo = `azsdk-js-ai-inference/1.0.0-beta.2`;
|
|
18
19
|
const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix
|
|
19
20
|
? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}`
|
|
20
21
|
: `${userAgentInfo}`;
|
|
@@ -28,6 +29,12 @@ export default function createClient(endpointParam, credentials, _a = {}) {
|
|
|
28
29
|
} });
|
|
29
30
|
const client = getClient(endpointUrl, credentials, options);
|
|
30
31
|
client.pipeline.removePolicy({ name: "ApiVersionPolicy" });
|
|
32
|
+
client.pipeline.addPolicy({
|
|
33
|
+
name: "InferenceTracingPolicy",
|
|
34
|
+
sendRequest: (req, next) => {
|
|
35
|
+
return tracingPolicy().sendRequest(req, next);
|
|
36
|
+
},
|
|
37
|
+
});
|
|
31
38
|
client.pipeline.addPolicy({
|
|
32
39
|
name: "ClientApiVersionPolicy",
|
|
33
40
|
sendRequest: (req, next) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modelClient.js","sourceRoot":"","sources":["../../src/modelClient.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;
|
|
1
|
+
{"version":3,"file":"modelClient.js","sourceRoot":"","sources":["../../src/modelClient.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;AAGlC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAQnD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,aAAqB,EACrB,WAA4C,EAC5C,KAAwE,EAAE;;QAA1E,EAAE,UAAU,GAAG,oBAAoB,OAAuC,EAAlC,OAAO,cAA/C,cAAiD,CAAF;IAE/C,MAAM,WAAW,GAAG,MAAA,MAAA,OAAO,CAAC,QAAQ,mCAAI,OAAO,CAAC,OAAO,mCAAI,GAAG,aAAa,EAAE,CAAC;IAC9E,MAAM,aAAa,GAAG,oCAAoC,CAAC;IAC3D,MAAM,eAAe,GACnB,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC,eAAe;QAClE,CAAC,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,eAAe,IAAI,aAAa,EAAE;QAChE,CAAC,CAAC,GAAG,aAAa,EAAE,CAAC;IACzB,OAAO,mCACF,OAAO,KACV,gBAAgB,EAAE;YAChB,eAAe;SAChB,EACD,cAAc,EAAE;YACd,MAAM,EAAE,MAAA,MAAA,OAAO,CAAC,cAAc,0CAAE,MAAM,mCAAI,MAAM,CAAC,IAAI;SACtD,EACD,WAAW,EAAE;YACX,MAAM,EAAE,MAAA,MAAA,OAAO,CAAC,WAAW,0CAAE,MAAM,mCAAI,CAAC,+BAA+B,CAAC;YACxE,gBAAgB,EAAE,MAAA,MAAA,OAAO,CAAC,WAAW,0CAAE,gBAAgB,mCAAI,SAAS;SACrE,GACF,CAAC;IAEF,MAAM,MAAM,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAgB,CAAC;IAE3E,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC3D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;QACxB,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACzB,OAAO,aAAa,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAChD,CAAC;KACF,CAAC,CAAC;IACH,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;QACxB,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACzB,qDAAqD;YACrD,yEAAyE;YACzE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,UAAU,EAAE,CAAC;gBACvD,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAClB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GACzD,eAAe,UAAU,EAAE,CAAC;YAC9B,CAAC;YAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;KACF,CAAC,CAAC;IACH,IAAI,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;YACxB,IAAI,EAAE,2BAA2B;YACjC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI;gBAC7B,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;gBAClE,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { ClientOptions } from \"@azure-rest/core-client\";\nimport { getClient } from \"@azure-rest/core-client\";\nimport { logger } from \"./logger.js\";\nimport type { TokenCredential, KeyCredential } from \"@azure/core-auth\";\nimport { isKeyCredential } from \"@azure/core-auth\";\nimport type { ModelClient } from \"./clientDefinitions.js\";\nimport { tracingPolicy } from \"./tracingPolicy.js\";\n\n/** The optional parameters for the client */\nexport interface ModelClientOptions extends ClientOptions {\n /** The api version option of the client */\n apiVersion?: string;\n}\n\n/**\n * Initialize a new instance of `ModelClient`\n * @param endpointParam - The parameter endpointParam\n * @param credentials - uniquely identify client credential\n * @param options - the parameter for all optional parameters\n */\nexport default function createClient(\n endpointParam: string,\n credentials: TokenCredential | KeyCredential,\n { apiVersion = \"2024-05-01-preview\", ...options }: ModelClientOptions = {},\n): ModelClient {\n const endpointUrl = options.endpoint ?? options.baseUrl ?? `${endpointParam}`;\n const userAgentInfo = `azsdk-js-ai-inference/1.0.0-beta.2`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}`\n : `${userAgentInfo}`;\n options = {\n ...options,\n userAgentOptions: {\n userAgentPrefix,\n },\n loggingOptions: {\n logger: options.loggingOptions?.logger ?? logger.info,\n },\n credentials: {\n scopes: options.credentials?.scopes ?? [\"https://ml.azure.com/.default\"],\n apiKeyHeaderName: options.credentials?.apiKeyHeaderName ?? \"api-key\",\n },\n };\n\n const client = getClient(endpointUrl, credentials, options) as ModelClient;\n\n client.pipeline.removePolicy({ name: \"ApiVersionPolicy\" });\n client.pipeline.addPolicy({\n name: \"InferenceTracingPolicy\",\n sendRequest: (req, next) => {\n return tracingPolicy().sendRequest(req, next);\n },\n });\n client.pipeline.addPolicy({\n name: \"ClientApiVersionPolicy\",\n sendRequest: (req, next) => {\n // Use the apiVersion defined in request url directly\n // Append one if there is no apiVersion and we have one at client options\n const url = new URL(req.url);\n if (!url.searchParams.get(\"api-version\") && apiVersion) {\n req.url = `${req.url}${\n Array.from(url.searchParams.keys()).length > 0 ? \"&\" : \"?\"\n }api-version=${apiVersion}`;\n }\n\n return next(req);\n },\n });\n if (isKeyCredential(credentials)) {\n client.pipeline.addPolicy({\n name: \"customKeyCredentialPolicy\",\n async sendRequest(request, next) {\n request.headers.set(\"Authorization\", \"Bearer \" + credentials.key);\n return next(request);\n },\n });\n }\n\n return client;\n}\n"]}
|
package/dist/browser/models.d.ts
CHANGED
|
@@ -44,6 +44,8 @@ export interface ChatMessageImageUrl {
|
|
|
44
44
|
/**
|
|
45
45
|
* The evaluation quality setting to use, which controls relative prioritization of speed, token consumption, and
|
|
46
46
|
* accuracy.
|
|
47
|
+
*
|
|
48
|
+
* Possible values: "auto", "low", "high"
|
|
47
49
|
*/
|
|
48
50
|
detail?: ChatMessageImageDetailLevel;
|
|
49
51
|
}
|
|
@@ -59,23 +61,13 @@ export interface ChatRequestAssistantMessage extends ChatRequestMessageParent {
|
|
|
59
61
|
*/
|
|
60
62
|
tool_calls?: Array<ChatCompletionsToolCall>;
|
|
61
63
|
}
|
|
62
|
-
/**
|
|
63
|
-
|
|
64
|
-
* chat completion.
|
|
65
|
-
*/
|
|
66
|
-
export interface ChatCompletionsToolCallParent {
|
|
64
|
+
/** A function tool call requested by the AI model. */
|
|
65
|
+
export interface ChatCompletionsToolCall {
|
|
67
66
|
/** The ID of the tool call. */
|
|
68
67
|
id: string;
|
|
69
|
-
type
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* A tool call to a function tool, issued by the model in evaluation of a configured function tool, that represents
|
|
73
|
-
* a function invocation needed for a subsequent chat completions request to resolve.
|
|
74
|
-
*/
|
|
75
|
-
export interface ChatCompletionsFunctionToolCall extends ChatCompletionsToolCallParent {
|
|
76
|
-
/** The type of tool call, in this case always 'function'. */
|
|
68
|
+
/** The type of tool call. Currently, only `function` is supported. */
|
|
77
69
|
type: "function";
|
|
78
|
-
/** The details of the function
|
|
70
|
+
/** The details of the function call requested by the AI model. */
|
|
79
71
|
function: FunctionCall;
|
|
80
72
|
}
|
|
81
73
|
/** The name and arguments of a function that should be called, as generated by the model. */
|
|
@@ -99,13 +91,31 @@ export interface ChatRequestToolMessage extends ChatRequestMessageParent {
|
|
|
99
91
|
/** The ID of the tool call resolved by the provided content. */
|
|
100
92
|
tool_call_id: string;
|
|
101
93
|
}
|
|
102
|
-
/**
|
|
103
|
-
|
|
94
|
+
/**
|
|
95
|
+
* Represents the format that the model must output. Use this to enable JSON mode instead of the default text mode.
|
|
96
|
+
* Note that to enable JSON mode, some AI models may also require you to instruct the model to produce JSON
|
|
97
|
+
* via a system or user message.
|
|
98
|
+
*/
|
|
99
|
+
export interface ChatCompletionsResponseFormatParent {
|
|
104
100
|
type: string;
|
|
105
101
|
}
|
|
106
|
-
/**
|
|
107
|
-
export interface
|
|
108
|
-
/**
|
|
102
|
+
/** A response format for Chat Completions that emits text responses. This is the default response format. */
|
|
103
|
+
export interface ChatCompletionsResponseFormatText extends ChatCompletionsResponseFormatParent {
|
|
104
|
+
/** Response format type: always 'text' for this object. */
|
|
105
|
+
type: "text";
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* A response format for Chat Completions that restricts responses to emitting valid JSON objects.
|
|
109
|
+
* Note that to enable JSON mode, some AI models may also require you to instruct the model to produce JSON
|
|
110
|
+
* via a system or user message.
|
|
111
|
+
*/
|
|
112
|
+
export interface ChatCompletionsResponseFormatJSON extends ChatCompletionsResponseFormatParent {
|
|
113
|
+
/** Response format type: always 'json_object' for this object. */
|
|
114
|
+
type: "json_object";
|
|
115
|
+
}
|
|
116
|
+
/** The definition of a chat completions tool that can call a function. */
|
|
117
|
+
export interface ChatCompletionsToolDefinition {
|
|
118
|
+
/** The type of the tool. Currently, only `function` is supported. */
|
|
109
119
|
type: "function";
|
|
110
120
|
/** The function definition details for the function tool. */
|
|
111
121
|
function: FunctionDefinition;
|
|
@@ -122,13 +132,9 @@ export interface FunctionDefinition {
|
|
|
122
132
|
/** The parameters the function accepts, described as a JSON Schema object. */
|
|
123
133
|
parameters?: unknown;
|
|
124
134
|
}
|
|
125
|
-
/** An abstract representation of an explicit, named tool selection to use for a chat completions request. */
|
|
126
|
-
export interface ChatCompletionsNamedToolSelectionParent {
|
|
127
|
-
type: string;
|
|
128
|
-
}
|
|
129
135
|
/** A tool selection of a specific, named function tool that will limit chat completions to using the named function. */
|
|
130
|
-
export interface
|
|
131
|
-
/** The
|
|
136
|
+
export interface ChatCompletionsNamedToolSelection {
|
|
137
|
+
/** The type of the tool. Currently, only `function` is supported. */
|
|
132
138
|
type: "function";
|
|
133
139
|
/** The function that should be called. */
|
|
134
140
|
function: ChatCompletionsFunctionToolSelection;
|
|
@@ -153,24 +159,19 @@ export type ChatRequestMessage = ChatRequestMessageParent | ChatRequestSystemMes
|
|
|
153
159
|
/** An abstract representation of a structured content item within a chat message. */
|
|
154
160
|
export type ChatMessageContentItem = ChatMessageContentItemParent | ChatMessageTextContentItem | ChatMessageImageContentItem;
|
|
155
161
|
/**
|
|
156
|
-
*
|
|
157
|
-
*
|
|
162
|
+
* Represents the format that the model must output. Use this to enable JSON mode instead of the default text mode.
|
|
163
|
+
* Note that to enable JSON mode, some AI models may also require you to instruct the model to produce JSON
|
|
164
|
+
* via a system or user message.
|
|
158
165
|
*/
|
|
159
|
-
export type
|
|
160
|
-
/** An abstract representation of a tool that can be used by the model to improve a chat completions response. */
|
|
161
|
-
export type ChatCompletionsToolDefinition = ChatCompletionsToolDefinitionParent | ChatCompletionsFunctionToolDefinition;
|
|
162
|
-
/** An abstract representation of an explicit, named tool selection to use for a chat completions request. */
|
|
163
|
-
export type ChatCompletionsNamedToolSelection = ChatCompletionsNamedToolSelectionParent | ChatCompletionsNamedFunctionToolSelection;
|
|
166
|
+
export type ChatCompletionsResponseFormat = ChatCompletionsResponseFormatParent | ChatCompletionsResponseFormatText | ChatCompletionsResponseFormatJSON;
|
|
164
167
|
/** Alias for ExtraParameters */
|
|
165
168
|
export type ExtraParameters = string;
|
|
166
169
|
/** Alias for ChatRole */
|
|
167
170
|
export type ChatRole = string;
|
|
168
171
|
/** Alias for ChatMessageImageDetailLevel */
|
|
169
172
|
export type ChatMessageImageDetailLevel = string;
|
|
170
|
-
/** Alias for ChatCompletionsResponseFormat */
|
|
171
|
-
export type ChatCompletionsResponseFormat = string;
|
|
172
173
|
/** Alias for ChatCompletionsToolSelectionPreset */
|
|
173
|
-
export type ChatCompletionsToolSelectionPreset = string
|
|
174
|
+
export type ChatCompletionsToolSelectionPreset = string;
|
|
174
175
|
/** Alias for EmbeddingEncodingFormat */
|
|
175
176
|
export type EmbeddingEncodingFormat = string;
|
|
176
177
|
/** Alias for EmbeddingInputType */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAGA,6EAA6E;AAC7E,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SAAQ,wBAAwB;IACxE,gGAAgG;IAChG,IAAI,EAAE,QAAQ,CAAC;IACf,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uEAAuE;AACvE,MAAM,WAAW,sBAAuB,SAAQ,wBAAwB;IACtE,4FAA4F;IAC5F,IAAI,EAAE,MAAM,CAAC;IACb,8FAA8F;IAC9F,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAAC;CACjD;AAED,qFAAqF;AACrF,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,MAAM,CAAC;CACd;AAED,4DAA4D;AAC5D,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"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"}
|
package/dist/browser/models.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/** An abstract representation of a chat message as provided in a request. */\nexport interface ChatRequestMessageParent {\n role: ChatRole;\n}\n\n/**\n * A request chat message containing system instructions that influence how the model will generate a chat completions\n * response.\n */\nexport interface ChatRequestSystemMessage extends ChatRequestMessageParent {\n /** The chat role associated with this message, which is always 'system' for system messages. */\n role: \"system\";\n /** The contents of the system message. */\n content: string;\n}\n\n/** A request chat message representing user input to the assistant. */\nexport interface ChatRequestUserMessage extends ChatRequestMessageParent {\n /** The chat role associated with this message, which is always 'user' for user messages. */\n role: \"user\";\n /** The contents of the user message, with available input types varying by selected model. */\n content: string | Array<ChatMessageContentItem>;\n}\n\n/** An abstract representation of a structured content item within a chat message. */\nexport interface ChatMessageContentItemParent {\n type: string;\n}\n\n/** A structured chat content item containing plain text. */\nexport interface ChatMessageTextContentItem extends ChatMessageContentItemParent {\n /** The discriminated object type: always 'text' for this type. */\n type: \"text\";\n /** The content of the message. */\n text: string;\n}\n\n/** A structured chat content item containing an image reference. */\nexport interface ChatMessageImageContentItem extends ChatMessageContentItemParent {\n /** The discriminated object type: always 'image_url' for this type. */\n type: \"image_url\";\n /** An internet location, which must be accessible to the model,from which the image may be retrieved. */\n image_url: ChatMessageImageUrl;\n}\n\n/** An internet location from which the model may retrieve an image. */\nexport interface ChatMessageImageUrl {\n /** The URL of the image. */\n url: string;\n /**\n * The evaluation quality setting to use, which controls relative prioritization of speed, token consumption, and\n * accuracy.\n *\n * Possible values: \"auto\", \"low\", \"high\"\n */\n detail?: ChatMessageImageDetailLevel;\n}\n\n/** A request chat message representing response or action from the assistant. */\nexport interface ChatRequestAssistantMessage extends ChatRequestMessageParent {\n /** The chat role associated with this message, which is always 'assistant' for assistant messages. */\n role: \"assistant\";\n /** The content of the message. */\n content?: string | null;\n /**\n * The tool calls that must be resolved and have their outputs appended to subsequent input messages for the chat\n * completions request to resolve as configured.\n */\n tool_calls?: Array<ChatCompletionsToolCall>;\n}\n\n/** A function tool call requested by the AI model. */\nexport interface ChatCompletionsToolCall {\n /** The ID of the tool call. */\n id: string;\n /** The type of tool call. Currently, only `function` is supported. */\n type: \"function\";\n /** The details of the function call requested by the AI model. */\n function: FunctionCall;\n}\n\n/** The name and arguments of a function that should be called, as generated by the model. */\nexport interface FunctionCall {\n /** The name of the function to call. */\n name: string;\n /**\n * The arguments to call the function with, as generated by the model in JSON format.\n * Note that the model does not always generate valid JSON, and may hallucinate parameters\n * not defined by your function schema. Validate the arguments in your code before calling\n * your function.\n */\n arguments: string;\n}\n\n/** A request chat message representing requested output from a configured tool. */\nexport interface ChatRequestToolMessage extends ChatRequestMessageParent {\n /** The chat role associated with this message, which is always 'tool' for tool messages. */\n role: \"tool\";\n /** The content of the message. */\n content: string | null;\n /** The ID of the tool call resolved by the provided content. */\n tool_call_id: string;\n}\n\n/**\n * Represents the format that the model must output. Use this to enable JSON mode instead of the default text mode.\n * Note that to enable JSON mode, some AI models may also require you to instruct the model to produce JSON\n * via a system or user message.\n */\nexport interface ChatCompletionsResponseFormatParent {\n type: string;\n}\n\n/** A response format for Chat Completions that emits text responses. This is the default response format. */\nexport interface ChatCompletionsResponseFormatText extends ChatCompletionsResponseFormatParent {\n /** Response format type: always 'text' for this object. */\n type: \"text\";\n}\n\n/**\n * A response format for Chat Completions that restricts responses to emitting valid JSON objects.\n * Note that to enable JSON mode, some AI models may also require you to instruct the model to produce JSON\n * via a system or user message.\n */\nexport interface ChatCompletionsResponseFormatJSON extends ChatCompletionsResponseFormatParent {\n /** Response format type: always 'json_object' for this object. */\n type: \"json_object\";\n}\n\n/** The definition of a chat completions tool that can call a function. */\nexport interface ChatCompletionsToolDefinition {\n /** The type of the tool. Currently, only `function` is supported. */\n type: \"function\";\n /** The function definition details for the function tool. */\n function: FunctionDefinition;\n}\n\n/** The definition of a caller-specified function that chat completions may invoke in response to matching user input. */\nexport interface FunctionDefinition {\n /** The name of the function to be called. */\n name: string;\n /**\n * A description of what the function does. The model will use this description when selecting the function and\n * interpreting its parameters.\n */\n description?: string;\n /** The parameters the function accepts, described as a JSON Schema object. */\n parameters?: unknown;\n}\n\n/** A tool selection of a specific, named function tool that will limit chat completions to using the named function. */\nexport interface ChatCompletionsNamedToolSelection {\n /** The type of the tool. Currently, only `function` is supported. */\n type: \"function\";\n /** The function that should be called. */\n function: ChatCompletionsFunctionToolSelection;\n}\n\n/** A tool selection of a specific, named function tool that will limit chat completions to using the named function. */\nexport interface ChatCompletionsFunctionToolSelection {\n /** The name of the function that should be called. */\n name: string;\n}\n\n/** Represents an image with optional text. */\nexport interface ImageEmbeddingInput {\n /** The input image, in PNG format. */\n image: string;\n /**\n * Optional. The text input to feed into the model (like DINO, CLIP).\n * Returns a 422 error if the model doesn't support the value or parameter.\n */\n text?: string;\n}\n\n/** An abstract representation of a chat message as provided in a request. */\nexport type ChatRequestMessage =\n | ChatRequestMessageParent\n | ChatRequestSystemMessage\n | ChatRequestUserMessage\n | ChatRequestAssistantMessage\n | ChatRequestToolMessage;\n/** An abstract representation of a structured content item within a chat message. */\nexport type ChatMessageContentItem =\n | ChatMessageContentItemParent\n | ChatMessageTextContentItem\n | ChatMessageImageContentItem;\n/**\n * Represents the format that the model must output. Use this to enable JSON mode instead of the default text mode.\n * Note that to enable JSON mode, some AI models may also require you to instruct the model to produce JSON\n * via a system or user message.\n */\nexport type ChatCompletionsResponseFormat =\n | ChatCompletionsResponseFormatParent\n | ChatCompletionsResponseFormatText\n | ChatCompletionsResponseFormatJSON;\n/** Alias for ExtraParameters */\nexport type ExtraParameters = string;\n/** Alias for ChatRole */\nexport type ChatRole = string;\n/** Alias for ChatMessageImageDetailLevel */\nexport type ChatMessageImageDetailLevel = string;\n/** Alias for ChatCompletionsToolSelectionPreset */\nexport type ChatCompletionsToolSelectionPreset = string;\n/** Alias for EmbeddingEncodingFormat */\nexport type EmbeddingEncodingFormat = string;\n/** Alias for EmbeddingInputType */\nexport type EmbeddingInputType = string;\n"]}
|