@salesforce/lds-adapters-sfap-einstein-ai-gateway 0.1.0-dev1

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.
Files changed (50) hide show
  1. package/LICENSE.txt +82 -0
  2. package/README.md +18 -0
  3. package/dist/es/es2018/sfap-einstein-ai-gateway.js +1792 -0
  4. package/dist/es/es2018/types/src/generated/adapters/adapter-utils.d.ts +62 -0
  5. package/dist/es/es2018/types/src/generated/adapters/getEmbeddings.d.ts +37 -0
  6. package/dist/es/es2018/types/src/generated/adapters/getGenerations.d.ts +32 -0
  7. package/dist/es/es2018/types/src/generated/adapters/registerFeedback.d.ts +27 -0
  8. package/dist/es/es2018/types/src/generated/artifacts/main.d.ts +3 -0
  9. package/dist/es/es2018/types/src/generated/artifacts/sfdc.d.ts +5 -0
  10. package/dist/es/es2018/types/src/generated/resources/postAiGptV1Embeddings.d.ts +27 -0
  11. package/dist/es/es2018/types/src/generated/resources/postAiGptV1Feedback.d.ts +26 -0
  12. package/dist/es/es2018/types/src/generated/resources/postAiGptV1Generations.d.ts +31 -0
  13. package/dist/es/es2018/types/src/generated/types/ChatMessage.d.ts +46 -0
  14. package/dist/es/es2018/types/src/generated/types/ContentQualityRepresentation.d.ts +28 -0
  15. package/dist/es/es2018/types/src/generated/types/ConversationalMemorySettings.d.ts +31 -0
  16. package/dist/es/es2018/types/src/generated/types/EmbeddingErrorRepresentation.d.ts +53 -0
  17. package/dist/es/es2018/types/src/generated/types/EmbeddingRequest.d.ts +44 -0
  18. package/dist/es/es2018/types/src/generated/types/EmbeddingResponse.d.ts +37 -0
  19. package/dist/es/es2018/types/src/generated/types/Embeddings.d.ts +31 -0
  20. package/dist/es/es2018/types/src/generated/types/Error.d.ts +28 -0
  21. package/dist/es/es2018/types/src/generated/types/FeedbackErrorRepresentation.d.ts +28 -0
  22. package/dist/es/es2018/types/src/generated/types/FeedbackRequest.d.ts +56 -0
  23. package/dist/es/es2018/types/src/generated/types/FeedbackResponse202Representation.d.ts +28 -0
  24. package/dist/es/es2018/types/src/generated/types/FeedbackResponseRepresentation.d.ts +38 -0
  25. package/dist/es/es2018/types/src/generated/types/GenerationDetails.d.ts +32 -0
  26. package/dist/es/es2018/types/src/generated/types/GenerationRequest.d.ts +66 -0
  27. package/dist/es/es2018/types/src/generated/types/GenerationResponse.d.ts +55 -0
  28. package/dist/es/es2018/types/src/generated/types/GenerationResponseGenerations.d.ts +44 -0
  29. package/dist/es/es2018/types/src/generated/types/GenerationSettings.d.ts +50 -0
  30. package/dist/es/es2018/types/src/generated/types/GenerationsErrorRepresentation.d.ts +28 -0
  31. package/dist/es/es2018/types/src/generated/types/HyperLink.d.ts +28 -0
  32. package/dist/es/es2018/types/src/generated/types/LLMProviderDetails.d.ts +43 -0
  33. package/dist/es/es2018/types/src/generated/types/LLMProviderResponse.d.ts +31 -0
  34. package/dist/es/es2018/types/src/generated/types/Links.d.ts +32 -0
  35. package/dist/es/es2018/types/src/generated/types/Localization.d.ts +35 -0
  36. package/dist/es/es2018/types/src/generated/types/ModelResponse.d.ts +31 -0
  37. package/dist/es/es2018/types/src/generated/types/PluginGenerationRequest.d.ts +25 -0
  38. package/dist/es/es2018/types/src/generated/types/PluginGenerationResponse.d.ts +25 -0
  39. package/dist/es/es2018/types/src/generated/types/ProbableLocale.d.ts +30 -0
  40. package/dist/es/es2018/types/src/generated/types/SafetyCategoryScores.d.ts +41 -0
  41. package/dist/es/es2018/types/src/generated/types/SafetyScoreRepresentation.d.ts +31 -0
  42. package/dist/es/es2018/types/src/generated/types/type-utils.d.ts +32 -0
  43. package/dist/es/es2018/types/src/raml-artifacts/resources/postAiGptV1Embeddings/createResourceRequest.d.ts +20 -0
  44. package/dist/es/es2018/types/src/raml-artifacts/resources/postAiGptV1Feedback/createResourceRequest.d.ts +21 -0
  45. package/dist/es/es2018/types/src/raml-artifacts/resources/postAiGptV1Generations/createResourceRequest.d.ts +26 -0
  46. package/package.json +76 -0
  47. package/sfdc/index.d.ts +1 -0
  48. package/sfdc/index.js +1831 -0
  49. package/src/raml/api.raml +1003 -0
  50. package/src/raml/luvio.raml +38 -0
@@ -0,0 +1,1003 @@
1
+ #%RAML 1.0
2
+ types:
3
+ LLMProvidersResponse:
4
+ description: List of LLM providers supported in the gateway.
5
+ type: array
6
+ items: LLMProviderResponse
7
+ GenerationResponse:
8
+ type: object
9
+ properties:
10
+ id:
11
+ description: ID of the generation request.
12
+ type: string
13
+ required: true
14
+ generations:
15
+ description: List of generated text items.
16
+ type: array
17
+ items: GenerationResponseGenerations
18
+ required: true
19
+ prompt?:
20
+ description: Prompt used for the generation. Can be `null`.
21
+ (nullable): true
22
+ type: string | nil
23
+ input_safety_score?:
24
+ (nullable): true
25
+ type: SafetyScoreRepresentation | nil
26
+ parameters?:
27
+ description: Any provider-specific attributes included as part of this object. Can be `null`.
28
+ (nullable): true
29
+ type: object
30
+ properties:
31
+ //:
32
+ type: any
33
+ example:
34
+ strict: false
35
+ value:
36
+ model: text-davinci-003
37
+ object: text_completion
38
+ usage:
39
+ completion_tokens: 235
40
+ prompt_tokens: 91
41
+ total_tokens: 326
42
+ additionalProperties: true
43
+ HyperLink:
44
+ description: Hyperlink object included in the Links schema.
45
+ type: object
46
+ properties:
47
+ href?:
48
+ description: Link to the endpoint.
49
+ example:
50
+ strict: false
51
+ value: https://bot-svc-llm.sfproxy.einstein.aws-prod1-useast1.aws.sfdc.cl/v1.0/chat/session/
52
+ type: string
53
+ Error:
54
+ type: object
55
+ examples:
56
+ generated_1:
57
+ strict: false
58
+ value:
59
+ message: Bad Request
60
+ generated_2:
61
+ strict: false
62
+ value:
63
+ message: Access bearer token is missing or invalid
64
+ generated_3:
65
+ strict: false
66
+ value:
67
+ message: User forbidden from accessing the resource
68
+ generated_4:
69
+ strict: false
70
+ value:
71
+ message: Server is busy and cannot process the request at this time
72
+ generated_5:
73
+ strict: false
74
+ value:
75
+ message: Too many requests for the server to handle
76
+ generated_6:
77
+ strict: false
78
+ value:
79
+ message: Internal server error
80
+ generated_7:
81
+ strict: false
82
+ value:
83
+ message: Service is unavailable
84
+ generated_8:
85
+ strict: false
86
+ value:
87
+ message: List models not supported for this provider
88
+ additionalProperties: true
89
+ properties:
90
+ message:
91
+ description: Exception error message.
92
+ example:
93
+ strict: false
94
+ value: Something went wrong
95
+ type: string
96
+ required: true
97
+ GenerationSettings:
98
+ description: Settings that can be configured for a generation.
99
+ type: object
100
+ properties:
101
+ num_generations?:
102
+ description: Number of completions to be generated for a prompt.
103
+ default: 1
104
+ type: integer
105
+ max_tokens?:
106
+ description: Maximum number of tokens to be generated.
107
+ default: 16
108
+ type: integer
109
+ temperature?:
110
+ description: Sampling temperature to be used. Higher values mean more random token choices. Lower values mean less random token choices. Min value of 0; max value of 1.0.
111
+ default: 0.5
112
+ type: number
113
+ stop_sequences?:
114
+ description: An array of stop sequences to be used. The generated text is cut at the end of the earliest occurrence of a stop sequence.
115
+ type: array
116
+ items:
117
+ type: string
118
+ frequency_penalty?:
119
+ description: The frequency penalty to be used. Min value is 0.0; max value is 1.0. Can reduce the repetitiveness of generated tokens. The higher the value, the stronger a penalty is applied to previously present tokens, proportional to how many times they have already appeared in the prompt or prior generation.
120
+ default: 0.0
121
+ type: number
122
+ presence_penalty?:
123
+ description: The presence penalty to be used. Min value is 0.0; max value is 1.0. Can reduce the repetitiveness of generated tokens. Behaves similarly to `frequency_penalty`, except that this penalty is applied equally to all tokens that have already appeared, regardless of their exact frequencies.
124
+ default: 0.0
125
+ type: number
126
+ parameters?:
127
+ description: Dictionary of any other parameters that are required by the specified provider. Values are passed as is to the provider so that the request can include parameters that are unique to a provider.
128
+ type: object
129
+ properties:
130
+ //:
131
+ type: any
132
+ example:
133
+ strict: false
134
+ value:
135
+ top_p: 0.5
136
+ logProbs: 3
137
+ echo: false
138
+ additionalProperties: true
139
+ ChatSupportedProviders:
140
+ description: Provider used in the session.
141
+ enum:
142
+ - OpenAI
143
+ type: any
144
+ Links:
145
+ description: List of Einstein GPT API endpoints for HATEOAS compliance.
146
+ type: object
147
+ additionalProperties: false
148
+ properties:
149
+ self: HyperLink
150
+ session?: HyperLink
151
+ messages?: HyperLink
152
+ LLMProviderDetails:
153
+ description: Dictionary of properties for the provider.
154
+ type: object
155
+ properties:
156
+ provider_type:
157
+ description: Type of LLM provider (internal or external).
158
+ enum:
159
+ - internal
160
+ - external
161
+ type: string
162
+ required: true
163
+ provider_description:
164
+ description: Short description of the provider.
165
+ type: string
166
+ required: true
167
+ supports_generate:
168
+ description: Indicates whether the provider supports the `generate` operation.
169
+ type: boolean
170
+ required: true
171
+ supports_models:
172
+ description: Indicates whether the provider supports the `models` operation.
173
+ type: boolean
174
+ required: true
175
+ supports_embeddings:
176
+ description: Indicates whether the provider supports the `embeddings` operation.
177
+ type: boolean
178
+ required: true
179
+ max_tokens:
180
+ description: The maximum number of tokens allowed by the provider.
181
+ type: integer
182
+ required: true
183
+ ModelsResponse:
184
+ description: List of models for the specified provider.
185
+ type: array
186
+ items: ModelResponse
187
+ UserMessage:
188
+ description: The message from the user to the LLM.
189
+ example:
190
+ strict: false
191
+ value: Write a product description for a new phone.
192
+ type: string
193
+ PluginGenerationRequest:
194
+ description: Generic plug-in generation request
195
+ type: object
196
+ additionalProperties: true
197
+ LLMProviderResponse:
198
+ description: LLM provider properties.
199
+ type: object
200
+ properties:
201
+ name:
202
+ description: Name of the provider.
203
+ enum:
204
+ - OpenAI
205
+ - Cohere
206
+ - InternalTextGeneration
207
+ - InternalCodeGeneration
208
+ type: string
209
+ required: true
210
+ details?: LLMProviderDetails
211
+ GenerationDetails:
212
+ description: Details for a generation request.
213
+ type: object
214
+ properties:
215
+ generations:
216
+ description: Generated responses from the LLM.
217
+ type: array
218
+ items: ChatMessage
219
+ required: true
220
+ parameters?:
221
+ description: Any provider-specific attributes included as part of this object.
222
+ type: object
223
+ example:
224
+ strict: false
225
+ value:
226
+ model: text-davinci-003
227
+ object: text_completion
228
+ usage:
229
+ completion_tokens: 235
230
+ prompt_tokens: 91
231
+ total_tokens: 326
232
+ additionalProperties: true
233
+ ResponseId:
234
+ description: Identifier for a response.
235
+ example:
236
+ strict: false
237
+ value: 014DFFD2-04B5-4765-8EA7-507585268CD3
238
+ type: string
239
+ ChatMessage:
240
+ description: Representation of a message in a conversation.
241
+ type: object
242
+ properties:
243
+ id?:
244
+ description: Generation ID. This value is required to register feedback.
245
+ type: string
246
+ role:
247
+ description: Persona that sent the message.
248
+ enum:
249
+ - system
250
+ - user
251
+ - assistant
252
+ type: string
253
+ required: true
254
+ content:
255
+ description: The content of the message.
256
+ example:
257
+ strict: false
258
+ value: Can you give me a recipe for chocolate brownies?
259
+ type: string
260
+ required: true
261
+ timestamp?:
262
+ description: Timestamp when the message was sent.
263
+ example:
264
+ strict: false
265
+ value: 1682536893
266
+ type: number
267
+ parameters?:
268
+ description: Any provider-specific attributes included as part of this object.
269
+ (nullable): true
270
+ type: object
271
+ example:
272
+ strict: false
273
+ value:
274
+ finish_reason: stop
275
+ index: 0
276
+ logprobs: null
277
+ additionalProperties: true
278
+ generation_safety_score?: SafetyScoreRepresentation
279
+ generation_content_quality?: ContentQualityRepresentation
280
+ GenerationResponseGenerations:
281
+ description: Generated text that is part of the generated response.
282
+ type: object
283
+ properties:
284
+ id?:
285
+ description: Generation ID. This value is required to register feedback.
286
+ type: string
287
+ text:
288
+ description: The generated text.
289
+ type: string
290
+ required: true
291
+ parameters?:
292
+ description: Any provider-specific attributes included as part of this object. Can be `null`.
293
+ (nullable): true
294
+ type: object
295
+ properties:
296
+ //:
297
+ type: any
298
+ example:
299
+ strict: false
300
+ value:
301
+ finish_reason: stop
302
+ index: 0
303
+ logprobs: null
304
+ additionalProperties: true
305
+ generation_safety_score?:
306
+ (nullable): true
307
+ type: SafetyScoreRepresentation | nil
308
+ generation_content_quality?:
309
+ (nullable): true
310
+ type: ContentQualityRepresentation | nil
311
+ SafetyCategoryScores:
312
+ description: Probability for each category. A higher probability indicates a more toxic content.
313
+ type: object
314
+ properties:
315
+ toxicity?:
316
+ default: 0.0
317
+ type: number
318
+ minimum: 0
319
+ maximum: 1
320
+ hate?:
321
+ default: 0.0
322
+ type: number
323
+ minimum: 0
324
+ maximum: 1
325
+ identity?:
326
+ default: 0.0
327
+ type: number
328
+ minimum: 0
329
+ maximum: 1
330
+ violence?:
331
+ default: 0.0
332
+ type: number
333
+ minimum: 0
334
+ maximum: 1
335
+ physical?:
336
+ default: 0.0
337
+ type: number
338
+ minimum: 0
339
+ maximum: 1
340
+ sexual?:
341
+ default: 0.0
342
+ type: number
343
+ minimum: 0
344
+ maximum: 1
345
+ profanity?:
346
+ default: 0.0
347
+ type: number
348
+ minimum: 0
349
+ maximum: 1
350
+ biased?:
351
+ default: 0.0
352
+ type: number
353
+ minimum: 0
354
+ maximum: 1
355
+ PluginGenerationResponse:
356
+ description: Generic plug-in generation response
357
+ type: object
358
+ additionalProperties: true
359
+ GenerationRequest:
360
+ type: object
361
+ properties:
362
+ prompt:
363
+ description: The prompt or text to be completed.
364
+ type: string
365
+ required: true
366
+ num_generations?:
367
+ description: Number of completions to be generated for the prompt.
368
+ default: 1
369
+ type: integer
370
+ max_tokens?:
371
+ description: Maximum number of tokens to be generated.
372
+ type: integer
373
+ enable_pii_masking?:
374
+ description: Indicates whether to mask personally identifiable information (PII) in the prompt. Defaults to `false`.
375
+ type: boolean
376
+ temperature?:
377
+ description: Sampling temperature to be used. Higher values mean more random token choices. Lower values mean less random token choices. Min value of 0; max value of 1.0.
378
+ default: 0.5
379
+ type: number
380
+ stop_sequences?:
381
+ description: An array of stop sequences. The generated text is cut at the end of the earliest occurrence of a stop sequence.
382
+ type: array
383
+ items:
384
+ type: string
385
+ frequency_penalty?:
386
+ description: The frequency penalty. Min value is 0.0; max value is 1.0. Can reduce the repetitiveness of generated tokens. The higher the value, the stronger a penalty is applied to previously present tokens, proportional to how many times they have already appeared in the prompt or prior generation.
387
+ default: 0.0
388
+ type: number
389
+ presence_penalty?:
390
+ description: The presence penalty. Min value is 0.0; max value is 1.0. Can reduce the repetitiveness of generated tokens. Behaves similarly to `frequency_penalty`, except that this penalty is applied equally to all tokens that have already appeared, regardless of their exact frequencies.
391
+ default: 0.0
392
+ type: number
393
+ model?:
394
+ description: The model to be used for generating responses. Defaults to a provider-specific model.
395
+ example:
396
+ strict: false
397
+ value: text-davinci-003
398
+ type: string
399
+ parameters?:
400
+ description: Dictionary of any other parameters that are required by the provider. Values are passed as is to the provider so that the request can include parameters that are unique to a provider.
401
+ type: object
402
+ properties:
403
+ //:
404
+ type: any
405
+ example:
406
+ strict: false
407
+ value:
408
+ top_p: 0.5
409
+ logProbs: 3
410
+ echo: false
411
+ additionalProperties: true
412
+ tags?:
413
+ description: Dictionary of any other information relevant to the gateway client.
414
+ type: object
415
+ properties:
416
+ //:
417
+ type: any
418
+ example:
419
+ strict: false
420
+ value:
421
+ node-id: node-53p98pwse5i39ququ4
422
+ node-53p98pwse5i39ququ4: gateway-request-id
423
+ additionalProperties: true
424
+ ContentQualityRepresentation:
425
+ description: Data generated by the Trust Layer for content safety and quality (e.g., scores, explanations)
426
+ type: object
427
+ properties:
428
+ is_toxicity_detected?:
429
+ description: True if the overall safety score exceeds threshold, false otherwise. Null value indicates safety score call failed
430
+ type: boolean
431
+ SafetyScoreRepresentation:
432
+ description: Overall score and category score
433
+ type: object
434
+ properties:
435
+ safety_score?:
436
+ description: A higher score implies safer content
437
+ type: number
438
+ minimum: 0
439
+ maximum: 1
440
+ category_scores?: SafetyCategoryScores | nil
441
+ ModelResponse:
442
+ description: Model properties.
443
+ type: object
444
+ properties:
445
+ id:
446
+ description: ID of the model.
447
+ type: string
448
+ required: true
449
+ properties?:
450
+ description: Dictionary of properties for the model. Values are specific to each provider.
451
+ type: object
452
+ example:
453
+ strict: false
454
+ value:
455
+ permission:
456
+ - allow_fine_tuning: true
457
+ GenerationsErrorRepresentation:
458
+ description: Error response representation
459
+ type: object
460
+ additionalProperties: true
461
+ properties:
462
+ message:
463
+ description: Exception error message
464
+ type: string
465
+ required: true
466
+ ConversationalMemorySettings:
467
+ description: Settings that can be configured for conversational memory
468
+ type: object
469
+ properties:
470
+ strategy?:
471
+ description: The strategy to use when providing conversational context to the LLM.
472
+ default: last_n_turns
473
+ enum:
474
+ - last_n_turns
475
+ type: string
476
+ max_turns?:
477
+ description: Maximum number of turns to be included in the context provided to the LLM. To be used with last_n_turns strategy.
478
+ default: 5
479
+ type: integer
480
+ GenerationSettingsResponse:
481
+ (amf-and):
482
+ - GenerationSettings
483
+ type: any
484
+ FeedbackRequest:
485
+ type: object
486
+ properties:
487
+ id:
488
+ description: A unique ID for the feedback object.
489
+ type: string
490
+ generation_id?:
491
+ description: The ID of the gateway's generation response. For example, `GenerationResponseGenerations.id`.
492
+ type: string
493
+ turn_id?:
494
+ description: The unique ID of a batch of generations to support to capture a single feedback for multiple generations.
495
+ type: string
496
+ app_generation_id?:
497
+ description: The app-specific generation ID to support cases where client further split a generation into multiple generations.
498
+ type: string
499
+ app_generation?:
500
+ description: The app-specific generation text to support cases where the client further splits a generation into multiple generations.
501
+ type: string
502
+ feedback?:
503
+ description: The feedback sentiment. Can be `null`.
504
+ enum:
505
+ - GOOD
506
+ - BAD
507
+ (nullable): true
508
+ type: string | nil
509
+ feedback_text?:
510
+ description: The textual representation of the feedback as provided by the user.
511
+ type: string
512
+ source?:
513
+ description: The source of the feedback. For example, `human` or `app`.
514
+ type: string
515
+ app_feedback?:
516
+ description: Dictionary of any app-level feedback and any other free-form parameters.
517
+ type: object
518
+ properties:
519
+ //:
520
+ type: any # Fix for W-14390785
521
+ additionalProperties: true
522
+ FeedbackResponseRepresentation:
523
+ description: Output of a einstein llm feedback call
524
+ type: object
525
+ properties:
526
+ message:
527
+ description: Response text of the feedback API
528
+ type: string
529
+ FeedbackResponse202Representation:
530
+ description: Output of a einstein llm feedback call
531
+ type: object
532
+ additionalProperties: true
533
+ properties:
534
+ message:
535
+ description: Response text of the feedback API
536
+ type: string
537
+ FeedbackErrorRepresentation:
538
+ description: Feedback Error Representation
539
+ type: object
540
+ additionalProperties: true
541
+ properties:
542
+ message:
543
+ description: Exception error message
544
+ type: string
545
+ EmbeddingRequest:
546
+ type: object
547
+ properties:
548
+ input:
549
+ description: Input text used for generating an embedding. Data is encoded as an array of strings.
550
+ type: array
551
+ items:
552
+ type: string
553
+ required: true
554
+ model?:
555
+ description: The model to be used for generating the embedding. Defaults to a provider-specific model.
556
+ example:
557
+ strict: false
558
+ value: text-embedding-ada-002
559
+ type: string
560
+ enable_pii_masking?:
561
+ description: Indicates whether to mask personally identifiable information (PII) in the prompt. Defaults to `false`.
562
+ type: boolean
563
+ localization?: Localization
564
+ parameters?:
565
+ description: Dictionary of any other parameters that are required by the specified provider. Values are passed as is to the provider so that the request can include parameters that are unique to a provider.
566
+ type: object
567
+ properties:
568
+ //:
569
+ type: any # Fix for W-14390785
570
+ example:
571
+ strict: false
572
+ value:
573
+ logprobs: 5
574
+ additionalProperties: true
575
+ Localization:
576
+ description: Localization
577
+ type: object
578
+ properties:
579
+ defaultLocale:
580
+ type: string
581
+ description: Language and region code.
582
+ required: true
583
+ inputLocales?:
584
+ description: Locales contained in the prompt text.
585
+ type: array
586
+ items: ProbableLocale
587
+ expectedLocales?:
588
+ description: Expected output languages of the generations. Derived from output language instructions of the prompt.
589
+ type: array
590
+ items: string
591
+ ProbableLocale:
592
+ description: ''
593
+ type: object
594
+ properties:
595
+ locale:
596
+ type: string
597
+ description: Language and region code.
598
+ required: true
599
+ probability?:
600
+ type: number
601
+ minimum: 0
602
+ maximum: 1
603
+ EmbeddingResponse:
604
+ type: object
605
+ properties:
606
+ embeddings?:
607
+ description: Array of `Embeddings` in the response.
608
+ type: array
609
+ items: Embeddings
610
+ parameters?:
611
+ description: Any provider-specific attributes are included as part of this object.
612
+ type: object
613
+ properties:
614
+ //:
615
+ type: any # Fix for W-14390785
616
+ example:
617
+ strict: false
618
+ value:
619
+ texts:
620
+ - input
621
+ additionalProperties: true
622
+ Embeddings:
623
+ description: Embedding of the text.
624
+ type: object
625
+ properties:
626
+ embedding?:
627
+ description: Embedding of the text. Data is specified as an array of numbers.
628
+ type: array
629
+ items:
630
+ type: number
631
+ index?:
632
+ description: Index of the input text to which the embedding belongs.
633
+ type: integer
634
+ EmbeddingErrorRepresentation:
635
+ type: object
636
+ additionalProperties: true
637
+ properties:
638
+ error_code:
639
+ description: Error code to map the error message
640
+ example:
641
+ strict: false
642
+ value: INTERNAL_ERROR
643
+ type: string
644
+ required: true
645
+ message_code:
646
+ description: The messageCode field is a specification of the error and uniquely identifies an error message.
647
+ example:
648
+ strict: false
649
+ value: E00001
650
+ type: string
651
+ required: true
652
+ message:
653
+ description: Exception error message.
654
+ example:
655
+ strict: false
656
+ value: A generic error emitted by the API platform and mapped to the 500 HTTP status code
657
+ type: string
658
+ required: true
659
+ target?:
660
+ description: The targets field is a collection of references that represent the specific occurrence of the problem.
661
+ type: array
662
+ items:
663
+ type: object
664
+ properties:
665
+ type:
666
+ description: FIELD | QUERY_PARAMETER | HTTP_HEADER
667
+ example:
668
+ strict: false
669
+ value: FIELD
670
+ type: string
671
+ required: false
672
+ reference:
673
+ example:
674
+ strict: false
675
+ value: $['order']['payment']['billingAddress']['postalCode']
676
+ type: string
677
+ required: false
678
+ parameters?:
679
+ description: The parameters field is a collection of name-value pairs where each item in the collection represents a parameter leveraged in the error message.
680
+ type: array
681
+ items:
682
+ type: object
683
+ properties:
684
+ name:
685
+ example:
686
+ strict: false
687
+ value: postalCode
688
+ type: string
689
+ required: false
690
+ value:
691
+ example:
692
+ strict: false
693
+ value: '123456789'
694
+ type: string
695
+ required: false
696
+
697
+ annotationTypes:
698
+ amf-serverDescription:
699
+ type: any
700
+ amf-exclusiveMinimum:
701
+ type: any
702
+ amf-binding:
703
+ type: any
704
+ nullable:
705
+ type: any
706
+ amf-pattern:
707
+ type: any
708
+ amf-payloads:
709
+ type: any
710
+ amf-exclusiveMaximum:
711
+ type: any
712
+ amf-consumes:
713
+ type: any
714
+ amf-additionalProperties:
715
+ type: any
716
+ amf-or:
717
+ type: any
718
+ amf-url:
719
+ type: any
720
+ amf-externalDocs:
721
+ type: any
722
+ amf-flow:
723
+ type: any
724
+ amf-oasDeprecated:
725
+ type: any
726
+ amf-contact:
727
+ type: any
728
+ amf-multipleOf:
729
+ type: any
730
+ amf-xor:
731
+ type: any
732
+ amf-not:
733
+ type: any
734
+ amf-callbacks:
735
+ type: any
736
+ amf-produces:
737
+ type: any
738
+ amf-format:
739
+ type: any
740
+ amf-license:
741
+ type: any
742
+ amf-summary:
743
+ type: any
744
+ amf-responses:
745
+ type: any
746
+ amf-maximum:
747
+ type: any
748
+ amf-tags:
749
+ type: any
750
+ amf-dependencies:
751
+ type: any
752
+ amf-readOnly:
753
+ type: any
754
+ amf-tuple:
755
+ type: any
756
+ amf-examples:
757
+ type: any
758
+ amf-collectionFormat:
759
+ type: any
760
+ amf-termsOfService:
761
+ type: any
762
+ amf-servers:
763
+ type: any
764
+ amf-xone:
765
+ type: any
766
+ amf-defaultResponse:
767
+ type: any
768
+ amf-baseUriParameters:
769
+ type: any
770
+ amf-parameters:
771
+ type: any
772
+ amf-minimum:
773
+ type: any
774
+ amf-recursive:
775
+ type: any
776
+ amf-and:
777
+ type: any
778
+ securitySchemes:
779
+ bearerAuth:
780
+ type: http
781
+ description: HTTP C2C (cloud-to-cloud) authentication scheme. Must be in the format `C2C <C2C Token>`.
782
+ settings: {}
783
+ title: Generative AI Gateway API
784
+ baseUri: api.salesforce.com
785
+ description: |
786
+ The Generative AI Gateway API connects your Einstein GPT application to large language models (LLMs) from Salesforce-approved providers.
787
+
788
+ To learn more about developing Einstein GPT applications, see the [developer guides](https://gpt-sfdocs.herokuapp.com/docs/platform/foundations/guide/) and the [Confluence space](https://www.sfdc.co/ai).
789
+ version: v1
790
+ /ai/gpt/v1/generations:
791
+ post:
792
+ displayName: generations
793
+ description: Generate a response based on the provided prompt and model parameters.
794
+ (amf-summary): Generate response
795
+ headers:
796
+ 'x-client-feature-id':
797
+ type: string
798
+ description: Client Feature Id.
799
+ 'x-sfdc-app-context':
800
+ type: string
801
+ default: EinsteinGPT
802
+ required: false
803
+ description: SFDC app context.
804
+ 'x-LLM-Provider':
805
+ description: Provider to use.
806
+ required: false
807
+ enum:
808
+ - OpenAI
809
+ - Cohere
810
+ - InternalTextGeneration
811
+ - InternalCodeGeneration
812
+ example:
813
+ strict: false
814
+ value: OpenAI
815
+ type: string
816
+ body:
817
+ application/json:
818
+ type: GenerationRequest
819
+ responses:
820
+ '200':
821
+ description: OK
822
+ body:
823
+ application/json:
824
+ type: GenerationResponse
825
+ '400':
826
+ description: Bad Request
827
+ body:
828
+ application/json:
829
+ type: GenerationsErrorRepresentation
830
+ '401':
831
+ description: Access bearer token is missing or invalid
832
+ body:
833
+ application/json:
834
+ type: GenerationsErrorRepresentation
835
+ '403':
836
+ description: User forbidden from accessing the resource
837
+ body:
838
+ application/json:
839
+ type: GenerationsErrorRepresentation
840
+ '423':
841
+ description: Server is busy and cannot process the request at this time
842
+ body:
843
+ application/json:
844
+ type: GenerationsErrorRepresentation
845
+ '429':
846
+ description: Too many requests for the server to handle
847
+ body:
848
+ application/json:
849
+ type: GenerationsErrorRepresentation
850
+ '500':
851
+ description: Internal server error.
852
+ body:
853
+ application/json:
854
+ type: GenerationsErrorRepresentation
855
+ '503':
856
+ description: Service is unavailable
857
+ body:
858
+ application/json:
859
+ type: GenerationsErrorRepresentation
860
+ '501':
861
+ description: Something went wrong
862
+ body:
863
+ application/json:
864
+ type: GenerationsErrorRepresentation
865
+ securedBy:
866
+ - bearerAuth
867
+
868
+ /ai/gpt/v1/feedback:
869
+ post:
870
+ displayName: feedback
871
+ description: Register feedback for a generation.
872
+ (amf-summary): Register feedback
873
+ headers:
874
+ 'x-client-feature-id':
875
+ type: string
876
+ description: Client Feature Id.
877
+ 'x-sfdc-app-context':
878
+ type: string
879
+ default: EinsteinGPT
880
+ required: false
881
+ description: SFDC app context.
882
+ body:
883
+ application/json: FeedbackRequest
884
+ responses:
885
+ '202':
886
+ description: Accepted
887
+ body:
888
+ application/json:
889
+ type: FeedbackResponse202Representation
890
+ '200':
891
+ description: Something went wrong
892
+ body:
893
+ application/json:
894
+ type: FeedbackResponseRepresentation # Use FeedbackErrorRepresentation as it's an error if luvio key is relaxed
895
+ '400':
896
+ description: Bad Request
897
+ body:
898
+ application/json:
899
+ type: FeedbackErrorRepresentation
900
+ '401':
901
+ description: Access bearer token is missing or invalid
902
+ body:
903
+ application/json:
904
+ type: FeedbackErrorRepresentation
905
+ '403':
906
+ description: User forbidden from accessing the resource
907
+ body:
908
+ application/json:
909
+ type: FeedbackErrorRepresentation
910
+ '423':
911
+ description: Server is busy and cannot process the request at this time
912
+ body:
913
+ application/json:
914
+ type: FeedbackErrorRepresentation
915
+ '429':
916
+ description: Too many requests for the server to handle
917
+ body:
918
+ application/json:
919
+ type: FeedbackErrorRepresentation
920
+ '503':
921
+ description: Service is unavailable
922
+ body:
923
+ application/json:
924
+ type: FeedbackErrorRepresentation
925
+
926
+ securedBy:
927
+ - bearerAuth
928
+ /ai/gpt/v1/embeddings:
929
+ post:
930
+ displayName: embeddings
931
+ description: Create an embedding vector representing the input text.
932
+ (amf-summary): Create embedding
933
+ headers:
934
+ 'x-client-feature-id':
935
+ type: string
936
+ description: Client Feature Id.
937
+ 'x-sfdc-app-context':
938
+ type: string
939
+ default: EinsteinGPT
940
+ required: false
941
+ description: SFDC app context.
942
+ 'x-LLM-Provider':
943
+ description: Provider to use.
944
+ required: false
945
+ enum:
946
+ - AzureOpenAI
947
+ - OpenAI
948
+ - InternalTextGeneration
949
+ - InternalCodeGeneration
950
+ example:
951
+ strict: false
952
+ value: OpenAI
953
+ type: string
954
+ body:
955
+ application/json: EmbeddingRequest
956
+ responses:
957
+ '200':
958
+ description: OK
959
+ body:
960
+ application/json:
961
+ type: EmbeddingResponse
962
+ '400':
963
+ description: Bad Request
964
+ body:
965
+ application/json:
966
+ type: EmbeddingErrorRepresentation
967
+ '401':
968
+ description: Access bearer token is missing or invalid
969
+ body:
970
+ application/json:
971
+ type: EmbeddingErrorRepresentation
972
+ '403':
973
+ description: User forbidden from accessing the resource
974
+ body:
975
+ application/json:
976
+ type: EmbeddingErrorRepresentation
977
+ '423':
978
+ description: Server is busy and cannot process the request at this time
979
+ body:
980
+ application/json:
981
+ type: EmbeddingErrorRepresentation
982
+ '429':
983
+ description: Too many requests for the server to handle
984
+ body:
985
+ application/json:
986
+ type: EmbeddingErrorRepresentation
987
+ '500':
988
+ description: Internal server error
989
+ body:
990
+ application/json:
991
+ type: EmbeddingErrorRepresentation
992
+ '503':
993
+ description: Service is unavailable
994
+ body:
995
+ application/json:
996
+ type: EmbeddingErrorRepresentation
997
+ '501':
998
+ description: Something went wrong
999
+ body:
1000
+ application/json:
1001
+ type: EmbeddingErrorRepresentation
1002
+ securedBy:
1003
+ - bearerAuth