Skip to content

Commit

Permalink
🌿 Fern Regeneration -- September 30, 2024 (#185)
Browse files Browse the repository at this point in the history
Co-authored-by: fern-api <115122769+fern-api[bot]@users.noreply.github.com>
Co-authored-by: twitchard <[email protected]>
  • Loading branch information
fern-api[bot] and twitchard authored Sep 30, 2024
1 parent 7516ca2 commit 1b00f4b
Show file tree
Hide file tree
Showing 27 changed files with 9,127 additions and 584 deletions.
12 changes: 12 additions & 0 deletions .mock/definition/api.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: api
error-discrimination:
strategy: status-code
default-environment: Production
environments:
Production: https://api.hume.ai
auth: HeaderAuthScheme
auth-schemes:
HeaderAuthScheme:
name: apiKey
header: X-Hume-Api-Key
type: optional<string>
2,778 changes: 2,778 additions & 0 deletions .mock/definition/empathic-voice/__package__.yml

Large diffs are not rendered by default.

146 changes: 146 additions & 0 deletions .mock/definition/empathic-voice/chat.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
channel:
path: /v0/evi/chat
auth: false
query-parameters:
config_id:
type: optional<string>
docs: >-
The unique identifier for an EVI configuration.
Include this ID in your connection request to equip EVI with the Prompt,
Language Model, Voice, and Tools associated with the specified
configuration. If omitted, EVI will apply [default configuration
settings](/docs/empathic-voice-interface-evi/configuration#default-configuration).
For help obtaining this ID, see our [Configuration
Guide](/docs/empathic-voice-interface-evi/configuration).
config_version:
type: optional<integer>
docs: >-
The version number of the EVI configuration specified by the
`config_id`.
Configs, as well as Prompts and Tools, are versioned. This versioning
system supports iterative development, allowing you to progressively
refine configurations and revert to previous versions if needed.
Include this parameter to apply a specific version of an EVI
configuration. If omitted, the latest version will be applied.
resumed_chat_group_id:
type: optional<string>
docs: >-
The unique identifier for a Chat Group. Use this field to preserve
context from a previous Chat session.
A Chat represents a single session from opening to closing a WebSocket
connection. In contrast, a Chat Group is a series of resumed Chats that
collectively represent a single conversation spanning multiple sessions.
Each Chat includes a Chat Group ID, which is used to preserve the
context of previous Chat sessions when starting a new one.
Including the Chat Group ID in the `resumed_chat_group_id` query
parameter is useful for seamlessly resuming a Chat after unexpected
network disconnections and for picking up conversations exactly where
you left off at a later time. This ensures preserved context across
multiple sessions.
There are three ways to obtain the Chat Group ID:
- [Chat
Metadata](/reference/empathic-voice-interface-evi/chat/chat#receive.Chat%20Metadata.type):
Upon establishing a WebSocket connection with EVI, the user receives a
Chat Metadata message. This message contains a `chat_group_id`, which
can be used to resume conversations within this chat group in future
sessions.
- [List Chats
endpoint](/reference/empathic-voice-interface-evi/chats/list-chats): Use
the GET `/v0/evi/chats` endpoint to obtain the Chat Group ID of
individual Chat sessions. This endpoint lists all available Chat
sessions and their associated Chat Group ID.
- [List Chat Groups
endpoint](/reference/empathic-voice-interface-evi/chat-groups/list-chat-groups):
Use the GET `/v0/evi/chat_groups` endpoint to obtain the Chat Group IDs
of all Chat Groups associated with an API key. This endpoint returns a
list of all available chat groups.
access_token:
type: optional<string>
docs: >-
Access token used for authenticating the client. If not provided, an
`api_key` must be provided to authenticate.
The access token is generated using both an API key and a Secret key,
which provides an additional layer of security compared to using just an
API key.
For more details, refer to the [Authentication Strategies
Guide](/docs/introduction/api-key#authentication-strategies).
api_key:
type: optional<string>
docs: >-
API key used for authenticating the client. If not provided, an
`access_token` must be provided to authenticate.
For more details, refer to the [Authentication Strategies
Guide](/docs/introduction/api-key#authentication-strategies).
messages:
subscribe:
origin: server
body: SubscribeEvent
publish:
origin: client
body: PublishEvent
examples:
- messages:
- type: publish
body:
type: audio_input
data: data
- type: subscribe
body:
type: assistant_end
imports:
root: __package__.yml
types:
SubscribeEvent:
discriminated: false
union:
- type: root.AssistantEnd
- type: root.AssistantMessage
- type: root.AudioOutput
- type: root.ChatMetadata
- type: root.WebSocketError
- type: root.UserInterruption
- type: root.UserMessage
- type: root.ToolCallMessage
- type: root.ToolResponseMessage
- type: root.ToolErrorMessage
source:
openapi: assistant-asyncapi.json
PublishEvent:
discriminated: false
union:
- type: root.AudioInput
- type: root.SessionSettings
- type: root.UserInput
- type: root.AssistantInput
- type: root.ToolResponseMessage
- type: root.ToolErrorMessage
- type: root.PauseAssistantMessage
- type: root.ResumeAssistantMessage
source:
openapi: assistant-asyncapi.json
Loading

0 comments on commit 1b00f4b

Please sign in to comment.