client.empathic_voice.tools.list_tools(...)
-
-
-
Fetches a paginated list of Tools.
Refer to our tool use guide for comprehensive instructions on defining and integrating tools into EVI.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) response = client.empathic_voice.tools.list_tools( page_number=0, page_size=2, ) for item in response: yield item # alternatively, you can paginate page-by-page for page in response.iter_pages(): yield page
-
-
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
restrict_to_most_recent:
typing.Optional[bool]
— By default,restrict_to_most_recent
is set to true, returning only the latest version of each tool. To include all versions of each tool in the list, setrestrict_to_most_recent
to false.
-
name:
typing.Optional[str]
— Filter to only include tools with name.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.tools.create_tool(...)
-
-
-
Creates a Tool that can be added to an EVI configuration.
Refer to our tool use guide for comprehensive instructions on defining and integrating tools into EVI.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.tools.create_tool( name="get_current_weather", parameters='{ "type": "object", "properties": { "location": { "type": "string", "description": "The city and state, e.g. San Francisco, CA" }, "format": { "type": "string", "enum": ["celsius", "fahrenheit"], "description": "The temperature unit to use. Infer this from the users location." } }, "required": ["location", "format"] }', version_description="Fetches current weather and uses celsius or fahrenheit based on location of user.", description="This tool is for getting the current weather.", fallback_content="Unable to fetch current weather.", )
-
-
-
name:
str
— Name applied to all versions of a particular Tool.
-
parameters:
str
Stringified JSON defining the parameters used by this version of the Tool.
These parameters define the inputs needed for the Tool’s execution, including the expected data type and description for each input field. Structured as a stringified JSON schema, this format ensures the Tool receives data in the expected format.
-
version_description:
typing.Optional[str]
— An optional description of the Tool version.
-
description:
typing.Optional[str]
— An optional description of what the Tool does, used by the supplemental LLM to choose when and how to call the function.
-
fallback_content:
typing.Optional[str]
— Optional text passed to the supplemental LLM in place of the tool call result. The LLM then uses this text to generate a response back to the user, ensuring continuity in the conversation if the Tool errors.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.tools.list_tool_versions(...)
-
-
-
Fetches a list of a Tool's versions.
Refer to our tool use guide for comprehensive instructions on defining and integrating tools into EVI.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.tools.list_tool_versions( id="00183a3f-79ba-413d-9f3b-609864268bea", )
-
-
-
id:
str
— Identifier for a Tool. Formatted as a UUID.
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
restrict_to_most_recent:
typing.Optional[bool]
— By default,restrict_to_most_recent
is set to true, returning only the latest version of each tool. To include all versions of each tool in the list, setrestrict_to_most_recent
to false.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.tools.create_tool_version(...)
-
-
-
Updates a Tool by creating a new version of the Tool.
Refer to our tool use guide for comprehensive instructions on defining and integrating tools into EVI.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.tools.create_tool_version( id="00183a3f-79ba-413d-9f3b-609864268bea", parameters='{ "type": "object", "properties": { "location": { "type": "string", "description": "The city and state, e.g. San Francisco, CA" }, "format": { "type": "string", "enum": ["celsius", "fahrenheit", "kelvin"], "description": "The temperature unit to use. Infer this from the users location." } }, "required": ["location", "format"] }', version_description="Fetches current weather and uses celsius, fahrenheit, or kelvin based on location of user.", fallback_content="Unable to fetch current weather.", description="This tool is for getting the current weather.", )
-
-
-
id:
str
— Identifier for a Tool. Formatted as a UUID.
-
parameters:
str
Stringified JSON defining the parameters used by this version of the Tool.
These parameters define the inputs needed for the Tool’s execution, including the expected data type and description for each input field. Structured as a stringified JSON schema, this format ensures the Tool receives data in the expected format.
-
version_description:
typing.Optional[str]
— An optional description of the Tool version.
-
description:
typing.Optional[str]
— An optional description of what the Tool does, used by the supplemental LLM to choose when and how to call the function.
-
fallback_content:
typing.Optional[str]
— Optional text passed to the supplemental LLM in place of the tool call result. The LLM then uses this text to generate a response back to the user, ensuring continuity in the conversation if the Tool errors.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.tools.delete_tool(...)
-
-
-
Deletes a Tool and its versions.
Refer to our tool use guide for comprehensive instructions on defining and integrating tools into EVI.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.tools.delete_tool( id="00183a3f-79ba-413d-9f3b-609864268bea", )
-
-
-
id:
str
— Identifier for a Tool. Formatted as a UUID.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.tools.update_tool_name(...)
-
-
-
Updates the name of a Tool.
Refer to our tool use guide for comprehensive instructions on defining and integrating tools into EVI.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.tools.update_tool_name( id="00183a3f-79ba-413d-9f3b-609864268bea", name="get_current_temperature", )
-
-
-
id:
str
— Identifier for a Tool. Formatted as a UUID.
-
name:
str
— Name applied to all versions of a particular Tool.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.tools.get_tool_version(...)
-
-
-
Fetches a specified version of a Tool.
Refer to our tool use guide for comprehensive instructions on defining and integrating tools into EVI.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.tools.get_tool_version( id="00183a3f-79ba-413d-9f3b-609864268bea", version=1, )
-
-
-
id:
str
— Identifier for a Tool. Formatted as a UUID.
-
version:
int
Version number for a Tool.
Tools, Configs, Custom Voices, and Prompts are versioned. This versioning system supports iterative development, allowing you to progressively refine tools and revert to previous versions if needed.
Version numbers are integer values representing different iterations of the Tool. Each update to the Tool increments its version number.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.tools.delete_tool_version(...)
-
-
-
Deletes a specified version of a Tool.
Refer to our tool use guide for comprehensive instructions on defining and integrating tools into EVI.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.tools.delete_tool_version( id="00183a3f-79ba-413d-9f3b-609864268bea", version=1, )
-
-
-
id:
str
— Identifier for a Tool. Formatted as a UUID.
-
version:
int
Version number for a Tool.
Tools, Configs, Custom Voices, and Prompts are versioned. This versioning system supports iterative development, allowing you to progressively refine tools and revert to previous versions if needed.
Version numbers are integer values representing different iterations of the Tool. Each update to the Tool increments its version number.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.tools.update_tool_description(...)
-
-
-
Updates the description of a specified Tool version.
Refer to our tool use guide for comprehensive instructions on defining and integrating tools into EVI.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.tools.update_tool_description( id="00183a3f-79ba-413d-9f3b-609864268bea", version=1, version_description="Fetches current temperature, precipitation, wind speed, AQI, and other weather conditions. Uses Celsius, Fahrenheit, or kelvin depending on user's region.", )
-
-
-
id:
str
— Identifier for a Tool. Formatted as a UUID.
-
version:
int
Version number for a Tool.
Tools, Configs, Custom Voices, and Prompts are versioned. This versioning system supports iterative development, allowing you to progressively refine tools and revert to previous versions if needed.
Version numbers are integer values representing different iterations of the Tool. Each update to the Tool increments its version number.
-
version_description:
typing.Optional[str]
— An optional description of the Tool version.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.prompts.list_prompts(...)
-
-
-
Fetches a paginated list of Prompts.
See our prompting guide for tips on crafting your system prompt.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) response = client.empathic_voice.prompts.list_prompts( page_number=0, page_size=2, ) for item in response: yield item # alternatively, you can paginate page-by-page for page in response.iter_pages(): yield page
-
-
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
restrict_to_most_recent:
typing.Optional[bool]
— Only include the most recent version of each prompt in the list.
-
name:
typing.Optional[str]
— Filter to only include prompts with name.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.prompts.create_prompt(...)
-
-
-
Creates a Prompt that can be added to an EVI configuration.
See our prompting guide for tips on crafting your system prompt.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.prompts.create_prompt( name="Weather Assistant Prompt", text="<role>You are an AI weather assistant providing users with accurate and up-to-date weather information. Respond to user queries concisely and clearly. Use simple language and avoid technical jargon. Provide temperature, precipitation, wind conditions, and any weather alerts. Include helpful tips if severe weather is expected.</role>", )
-
-
-
name:
str
— Name applied to all versions of a particular Prompt.
-
text:
str
Instructions used to shape EVI’s behavior, responses, and style.
You can use the Prompt to define a specific goal or role for EVI, specifying how it should act or what it should focus on during the conversation. For example, EVI can be instructed to act as a customer support representative, a fitness coach, or a travel advisor, each with its own set of behaviors and response styles.
For help writing a system prompt, see our Prompting Guide.
-
version_description:
typing.Optional[str]
— An optional description of the Prompt version.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.prompts.list_prompt_versions(...)
-
-
-
Fetches a list of a Prompt's versions.
See our prompting guide for tips on crafting your system prompt.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.prompts.list_prompt_versions( id="af699d45-2985-42cc-91b9-af9e5da3bac5", )
-
-
-
id:
str
— Identifier for a Prompt. Formatted as a UUID.
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
restrict_to_most_recent:
typing.Optional[bool]
— By default,restrict_to_most_recent
is set to true, returning only the latest version of each prompt. To include all versions of each prompt in the list, setrestrict_to_most_recent
to false.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.prompts.create_prompt_verison(...)
-
-
-
Updates a Prompt by creating a new version of the Prompt.
See our prompting guide for tips on crafting your system prompt.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.prompts.create_prompt_verison( id="af699d45-2985-42cc-91b9-af9e5da3bac5", text="<role>You are an updated version of an AI weather assistant providing users with accurate and up-to-date weather information. Respond to user queries concisely and clearly. Use simple language and avoid technical jargon. Provide temperature, precipitation, wind conditions, and any weather alerts. Include helpful tips if severe weather is expected.</role>", version_description="This is an updated version of the Weather Assistant Prompt.", )
-
-
-
id:
str
— Identifier for a Prompt. Formatted as a UUID.
-
text:
str
Instructions used to shape EVI’s behavior, responses, and style for this version of the Prompt.
You can use the Prompt to define a specific goal or role for EVI, specifying how it should act or what it should focus on during the conversation. For example, EVI can be instructed to act as a customer support representative, a fitness coach, or a travel advisor, each with its own set of behaviors and response styles.
For help writing a system prompt, see our Prompting Guide.
-
version_description:
typing.Optional[str]
— An optional description of the Prompt version.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.prompts.delete_prompt(...)
-
-
-
Deletes a Prompt and its versions.
See our prompting guide for tips on crafting your system prompt.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.prompts.delete_prompt( id="af699d45-2985-42cc-91b9-af9e5da3bac5", )
-
-
-
id:
str
— Identifier for a Prompt. Formatted as a UUID.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.prompts.update_prompt_name(...)
-
-
-
Updates the name of a Prompt.
See our prompting guide for tips on crafting your system prompt.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.prompts.update_prompt_name( id="af699d45-2985-42cc-91b9-af9e5da3bac5", name="Updated Weather Assistant Prompt Name", )
-
-
-
id:
str
— Identifier for a Prompt. Formatted as a UUID.
-
name:
str
— Name applied to all versions of a particular Prompt.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.prompts.get_prompt_version(...)
-
-
-
Fetches a specified version of a Prompt.
See our prompting guide for tips on crafting your system prompt.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.prompts.get_prompt_version( id="af699d45-2985-42cc-91b9-af9e5da3bac5", version=0, )
-
-
-
id:
str
— Identifier for a Prompt. Formatted as a UUID.
-
version:
int
Version number for a Prompt.
Prompts, Configs, Custom Voices, and Tools are versioned. This versioning system supports iterative development, allowing you to progressively refine prompts and revert to previous versions if needed.
Version numbers are integer values representing different iterations of the Prompt. Each update to the Prompt increments its version number.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.prompts.delete_prompt_version(...)
-
-
-
Deletes a specified version of a Prompt.
See our prompting guide for tips on crafting your system prompt.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.prompts.delete_prompt_version( id="af699d45-2985-42cc-91b9-af9e5da3bac5", version=1, )
-
-
-
id:
str
— Identifier for a Prompt. Formatted as a UUID.
-
version:
int
Version number for a Prompt.
Prompts, Configs, Custom Voices, and Tools are versioned. This versioning system supports iterative development, allowing you to progressively refine prompts and revert to previous versions if needed.
Version numbers are integer values representing different iterations of the Prompt. Each update to the Prompt increments its version number.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.prompts.update_prompt_description(...)
-
-
-
Updates the description of a Prompt.
See our prompting guide for tips on crafting your system prompt.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.prompts.update_prompt_description( id="af699d45-2985-42cc-91b9-af9e5da3bac5", version=1, version_description="This is an updated version_description.", )
-
-
-
id:
str
— Identifier for a Prompt. Formatted as a UUID.
-
version:
int
Version number for a Prompt.
Prompts, Configs, Custom Voices, and Tools are versioned. This versioning system supports iterative development, allowing you to progressively refine prompts and revert to previous versions if needed.
Version numbers are integer values representing different iterations of the Prompt. Each update to the Prompt increments its version number.
-
version_description:
typing.Optional[str]
— An optional description of the Prompt version.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.custom_voices.list_custom_voices(...)
-
-
-
Fetches a paginated list of Custom Voices.
Refer to our voices guide for details on creating a custom voice.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.custom_voices.list_custom_voices()
-
-
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
name:
typing.Optional[str]
— Filter to only include custom voices with name.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.custom_voices.create_custom_voice(...)
-
-
-
Creates a Custom Voice that can be added to an EVI configuration.
Refer to our voices guide for details on creating a custom voice.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.custom_voices.create_custom_voice( name="name", base_voice="ITO", )
-
-
-
name:
str
— The name of the Custom Voice. Maximum length of 75 characters. Will be converted to all-uppercase. (e.g., "sample voice" becomes "SAMPLE VOICE")
-
base_voice:
PostedCustomVoiceBaseVoice
— Specifies the base voice used to create the Custom Voice.
-
parameters:
typing.Optional[PostedCustomVoiceParameters]
The specified attributes of a Custom Voice.
If no parameters are specified then all attributes will be set to their defaults, meaning no modfications will be made to the base voice.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.custom_voices.get_custom_voice(...)
-
-
-
Fetches a specific Custom Voice by ID.
Refer to our voices guide for details on creating a custom voice.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.custom_voices.get_custom_voice( id="id", )
-
-
-
id:
str
— Identifier for a Custom Voice. Formatted as a UUID.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.custom_voices.create_custom_voice_version(...)
-
-
-
Updates a Custom Voice by creating a new version of the Custom Voice.
Refer to our voices guide for details on creating a custom voice.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.custom_voices.create_custom_voice_version( id="id", name="name", base_voice="ITO", )
-
-
-
id:
str
— Identifier for a Custom Voice. Formatted as a UUID.
-
name:
str
— The name of the Custom Voice. Maximum length of 75 characters. Will be converted to all-uppercase. (e.g., "sample voice" becomes "SAMPLE VOICE")
-
base_voice:
PostedCustomVoiceBaseVoice
— Specifies the base voice used to create the Custom Voice.
-
parameters:
typing.Optional[PostedCustomVoiceParameters]
The specified attributes of a Custom Voice.
If no parameters are specified then all attributes will be set to their defaults, meaning no modfications will be made to the base voice.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.custom_voices.delete_custom_voice(...)
-
-
-
Deletes a Custom Voice and its versions.
Refer to our voices guide for details on creating a custom voice.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.custom_voices.delete_custom_voice( id="id", )
-
-
-
id:
str
— Identifier for a Custom Voice. Formatted as a UUID.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.configs.list_configs(...)
-
-
-
Fetches a paginated list of Configs.
For more details on configuration options and how to configure EVI, see our configuration guide.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.configs.list_configs( page_number=0, page_size=1, )
-
-
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
restrict_to_most_recent:
typing.Optional[bool]
— By default,restrict_to_most_recent
is set to true, returning only the latest version of each tool. To include all versions of each tool in the list, setrestrict_to_most_recent
to false.
-
name:
typing.Optional[str]
— Filter to only include configs with this name.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.configs.create_config(...)
-
-
-
Creates a Config which can be applied to EVI.
For more details on configuration options and how to configure EVI, see our configuration guide.
-
-
-
from hume import HumeClient from hume.empathic_voice import ( PostedConfigPromptSpec, PostedEventMessageSpec, PostedEventMessageSpecs, PostedLanguageModel, PostedVoice, ) client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.configs.create_config( name="Weather Assistant Config", prompt=PostedConfigPromptSpec( id="af699d45-2985-42cc-91b9-af9e5da3bac5", version=0, ), evi_version="2", voice=PostedVoice( provider="HUME_AI", name="SAMPLE VOICE", ), language_model=PostedLanguageModel( model_provider="ANTHROPIC", model_resource="claude-3-5-sonnet-20240620", temperature=1.0, ), event_messages=PostedEventMessageSpecs( on_new_chat=PostedEventMessageSpec( enabled=False, text="", ), on_inactivity_timeout=PostedEventMessageSpec( enabled=False, text="", ), on_max_duration_timeout=PostedEventMessageSpec( enabled=False, text="", ), ), )
-
-
-
evi_version:
str
— Specifies the EVI version to use. Use"1"
for version 1, or"2"
for the latest enhanced version. For a detailed comparison of the two versions, refer to our guide.
-
name:
str
— Name applied to all versions of a particular Config.
-
version_description:
typing.Optional[str]
— An optional description of the Config version.
-
prompt:
typing.Optional[PostedConfigPromptSpec]
-
voice:
typing.Optional[PostedVoice]
— A voice specification associated with this Config.
-
language_model:
typing.Optional[PostedLanguageModel]
The supplemental language model associated with this Config.
This model is used to generate longer, more detailed responses from EVI. Choosing an appropriate supplemental language model for your use case is crucial for generating fast, high-quality responses from EVI.
-
ellm_model:
typing.Optional[PostedEllmModel]
The eLLM setup associated with this Config.
Hume's eLLM (empathic Large Language Model) is a multimodal language model that takes into account both expression measures and language. The eLLM generates short, empathic language responses and guides text-to-speech (TTS) prosody.
-
tools:
typing.Optional[typing.Sequence[typing.Optional[PostedUserDefinedToolSpec]]]
— List of user-defined tools associated with this Config.
-
builtin_tools:
typing.Optional[typing.Sequence[typing.Optional[PostedBuiltinTool]]]
— List of built-in tools associated with this Config.
-
event_messages:
typing.Optional[PostedEventMessageSpecs]
-
timeouts:
typing.Optional[PostedTimeoutSpecs]
-
webhooks:
typing.Optional[typing.Sequence[typing.Optional[PostedWebhookSpec]]]
— Webhook config specifications for each subscriber.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.configs.list_config_versions(...)
-
-
-
Fetches a list of a Config's versions.
For more details on configuration options and how to configure EVI, see our configuration guide.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.configs.list_config_versions( id="1b60e1a0-cc59-424a-8d2c-189d354db3f3", )
-
-
-
id:
str
— Identifier for a Config. Formatted as a UUID.
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
restrict_to_most_recent:
typing.Optional[bool]
— By default,restrict_to_most_recent
is set to true, returning only the latest version of each config. To include all versions of each config in the list, setrestrict_to_most_recent
to false.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.configs.create_config_version(...)
-
-
-
Updates a Config by creating a new version of the Config.
For more details on configuration options and how to configure EVI, see our configuration guide.
-
-
-
from hume import HumeClient from hume.empathic_voice import ( PostedConfigPromptSpec, PostedEllmModel, PostedEventMessageSpec, PostedEventMessageSpecs, PostedLanguageModel, PostedVoice, ) client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.configs.create_config_version( id="1b60e1a0-cc59-424a-8d2c-189d354db3f3", version_description="This is an updated version of the Weather Assistant Config.", evi_version="2", prompt=PostedConfigPromptSpec( id="af699d45-2985-42cc-91b9-af9e5da3bac5", version=0, ), voice=PostedVoice( provider="HUME_AI", name="ITO", ), language_model=PostedLanguageModel( model_provider="ANTHROPIC", model_resource="claude-3-5-sonnet-20240620", temperature=1.0, ), ellm_model=PostedEllmModel( allow_short_responses=True, ), event_messages=PostedEventMessageSpecs( on_new_chat=PostedEventMessageSpec( enabled=False, text="", ), on_inactivity_timeout=PostedEventMessageSpec( enabled=False, text="", ), on_max_duration_timeout=PostedEventMessageSpec( enabled=False, text="", ), ), )
-
-
-
id:
str
— Identifier for a Config. Formatted as a UUID.
-
evi_version:
str
— The version of the EVI used with this config.
-
version_description:
typing.Optional[str]
— An optional description of the Config version.
-
prompt:
typing.Optional[PostedConfigPromptSpec]
-
voice:
typing.Optional[PostedVoice]
— A voice specification associated with this Config version.
-
language_model:
typing.Optional[PostedLanguageModel]
The supplemental language model associated with this Config version.
This model is used to generate longer, more detailed responses from EVI. Choosing an appropriate supplemental language model for your use case is crucial for generating fast, high-quality responses from EVI.
-
ellm_model:
typing.Optional[PostedEllmModel]
The eLLM setup associated with this Config version.
Hume's eLLM (empathic Large Language Model) is a multimodal language model that takes into account both expression measures and language. The eLLM generates short, empathic language responses and guides text-to-speech (TTS) prosody.
-
tools:
typing.Optional[typing.Sequence[typing.Optional[PostedUserDefinedToolSpec]]]
— List of user-defined tools associated with this Config version.
-
builtin_tools:
typing.Optional[typing.Sequence[typing.Optional[PostedBuiltinTool]]]
— List of built-in tools associated with this Config version.
-
event_messages:
typing.Optional[PostedEventMessageSpecs]
-
timeouts:
typing.Optional[PostedTimeoutSpecs]
-
webhooks:
typing.Optional[typing.Sequence[typing.Optional[PostedWebhookSpec]]]
— Webhook config specifications for each subscriber.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.configs.delete_config(...)
-
-
-
Deletes a Config and its versions.
For more details on configuration options and how to configure EVI, see our configuration guide.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.configs.delete_config( id="1b60e1a0-cc59-424a-8d2c-189d354db3f3", )
-
-
-
id:
str
— Identifier for a Config. Formatted as a UUID.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.configs.update_config_name(...)
-
-
-
Updates the name of a Config.
For more details on configuration options and how to configure EVI, see our configuration guide.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.configs.update_config_name( id="1b60e1a0-cc59-424a-8d2c-189d354db3f3", name="Updated Weather Assistant Config Name", )
-
-
-
id:
str
— Identifier for a Config. Formatted as a UUID.
-
name:
str
— Name applied to all versions of a particular Config.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.configs.get_config_version(...)
-
-
-
Fetches a specified version of a Config.
For more details on configuration options and how to configure EVI, see our configuration guide.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.configs.get_config_version( id="1b60e1a0-cc59-424a-8d2c-189d354db3f3", version=1, )
-
-
-
id:
str
— Identifier for a Config. Formatted as a UUID.
-
version:
int
Version number for a Config.
Configs, Prompts, Custom Voices, and Tools are versioned. This versioning system supports iterative development, allowing you to progressively refine configurations and revert to previous versions if needed.
Version numbers are integer values representing different iterations of the Config. Each update to the Config increments its version number.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.configs.delete_config_version(...)
-
-
-
Deletes a specified version of a Config.
For more details on configuration options and how to configure EVI, see our configuration guide.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.configs.delete_config_version( id="1b60e1a0-cc59-424a-8d2c-189d354db3f3", version=1, )
-
-
-
id:
str
— Identifier for a Config. Formatted as a UUID.
-
version:
int
Version number for a Config.
Configs, Prompts, Custom Voices, and Tools are versioned. This versioning system supports iterative development, allowing you to progressively refine configurations and revert to previous versions if needed.
Version numbers are integer values representing different iterations of the Config. Each update to the Config increments its version number.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.configs.update_config_description(...)
-
-
-
Updates the description of a Config.
For more details on configuration options and how to configure EVI, see our configuration guide.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.configs.update_config_description( id="1b60e1a0-cc59-424a-8d2c-189d354db3f3", version=1, version_description="This is an updated version_description.", )
-
-
-
id:
str
— Identifier for a Config. Formatted as a UUID.
-
version:
int
Version number for a Config.
Configs, Prompts, Custom Voices, and Tools are versioned. This versioning system supports iterative development, allowing you to progressively refine configurations and revert to previous versions if needed.
Version numbers are integer values representing different iterations of the Config. Each update to the Config increments its version number.
-
version_description:
typing.Optional[str]
— An optional description of the Config version.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.chats.list_chats(...)
-
-
-
Fetches a paginated list of Chats.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) response = client.empathic_voice.chats.list_chats( page_number=0, page_size=1, ascending_order=True, ) for item in response: yield item # alternatively, you can paginate page-by-page for page in response.iter_pages(): yield page
-
-
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
ascending_order:
typing.Optional[bool]
— Specifies the sorting order of the results based on their creation date. Set to true for ascending order (chronological, with the oldest records first) and false for descending order (reverse-chronological, with the newest records first). Defaults to true.
-
config_id:
typing.Optional[str]
— Filter to only include chats that used this config.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.chats.list_chat_events(...)
-
-
-
Fetches a paginated list of Chat events.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) response = client.empathic_voice.chats.list_chat_events( id="470a49f6-1dec-4afe-8b61-035d3b2d63b0", page_number=0, page_size=3, ascending_order=True, ) for item in response: yield item # alternatively, you can paginate page-by-page for page in response.iter_pages(): yield page
-
-
-
id:
str
— Identifier for a Chat. Formatted as a UUID.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
ascending_order:
typing.Optional[bool]
— Specifies the sorting order of the results based on their creation date. Set to true for ascending order (chronological, with the oldest records first) and false for descending order (reverse-chronological, with the newest records first). Defaults to true.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.chats.get_audio(...)
-
-
-
Fetches the audio of a previous Chat. For more details, see our guide on audio reconstruction here.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.chats.get_audio( id="470a49f6-1dec-4afe-8b61-035d3b2d63b0", )
-
-
-
id:
str
— Identifier for a chat. Formatted as a UUID.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.chat_groups.list_chat_groups(...)
-
-
-
Fetches a paginated list of Chat Groups.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.chat_groups.list_chat_groups( page_number=0, page_size=1, ascending_order=True, config_id="1b60e1a0-cc59-424a-8d2c-189d354db3f3", )
-
-
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
ascending_order:
typing.Optional[bool]
— Specifies the sorting order of the results based on their creation date. Set to true for ascending order (chronological, with the oldest records first) and false for descending order (reverse-chronological, with the newest records first). Defaults to true.
-
config_id:
typing.Optional[str]
The unique identifier for an EVI configuration.
Filter Chat Groups to only include Chats that used this
config_id
in their most recent Chat.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.chat_groups.get_chat_group(...)
-
-
-
Fetches a ChatGroup by ID, including a paginated list of Chats associated with the ChatGroup.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.chat_groups.get_chat_group( id="697056f0-6c7e-487d-9bd8-9c19df79f05f", page_number=0, page_size=1, ascending_order=True, )
-
-
-
id:
str
— Identifier for a Chat Group. Formatted as a UUID.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
ascending_order:
typing.Optional[bool]
— Specifies the sorting order of the results based on their creation date. Set to true for ascending order (chronological, with the oldest records first) and false for descending order (reverse-chronological, with the newest records first). Defaults to true.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.chat_groups.list_chat_group_events(...)
-
-
-
Fetches a paginated list of Chat events associated with a Chat Group.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.chat_groups.list_chat_group_events( id="697056f0-6c7e-487d-9bd8-9c19df79f05f", page_number=0, page_size=3, ascending_order=True, )
-
-
-
id:
str
— Identifier for a Chat Group. Formatted as a UUID.
-
page_size:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
page_number:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
ascending_order:
typing.Optional[bool]
— Specifies the sorting order of the results based on their creation date. Set to true for ascending order (chronological, with the oldest records first) and false for descending order (reverse-chronological, with the newest records first). Defaults to true.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.empathic_voice.chat_groups.get_audio(...)
-
-
-
Fetches a paginated list of audio for each Chat within the specified Chat Group. For more details, see our guide on audio reconstruction here.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.empathic_voice.chat_groups.get_audio( id="369846cf-6ad5-404d-905e-a8acb5cdfc78", page_number=0, page_size=10, ascending_order=True, )
-
-
-
id:
str
— Identifier for a Chat Group. Formatted as a UUID.
-
page_number:
typing.Optional[int]
Specifies the maximum number of results to include per page, enabling pagination. The value must be between 1 and 100, inclusive.
For example, if
page_size
is set to 10, each page will include up to 10 items. Defaults to 10.
-
page_size:
typing.Optional[int]
Specifies the page number to retrieve, enabling pagination.
This parameter uses zero-based indexing. For example, setting
page_number
to 0 retrieves the first page of results (items 0-9 ifpage_size
is 10), settingpage_number
to 1 retrieves the second page (items 10-19), and so on. Defaults to 0, which retrieves the first page.
-
ascending_order:
typing.Optional[bool]
— Specifies the sorting order of the results based on their creation date. Set to true for ascending order (chronological, with the oldest records first) and false for descending order (reverse-chronological, with the newest records first). Defaults to true.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.expression_measurement.batch.list_jobs(...)
-
-
-
Sort and filter jobs.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.expression_measurement.batch.list_jobs()
-
-
-
limit:
typing.Optional[int]
— The maximum number of jobs to include in the response.
-
status:
typing.Optional[typing.Union[Status, typing.Sequence[Status]]]
Include only jobs of this status in the response. There are four possible statuses:
-
QUEUED
: The job has been received and is waiting to be processed. -
IN_PROGRESS
: The job is currently being processed. -
COMPLETED
: The job has finished processing. -
FAILED
: The job encountered an error and could not be completed successfully.
-
-
when:
typing.Optional[When]
— Specify whether to include jobs created before or after a giventimestamp_ms
.
-
timestamp_ms:
typing.Optional[int]
Provide a timestamp in milliseconds to filter jobs.
When combined with the
when
parameter, you can filter jobs before or after the given timestamp. Defaults to the current Unix timestamp if one is not provided.
-
sort_by:
typing.Optional[SortBy]
Specify which timestamp to sort the jobs by.
-
created
: Sort jobs by the time of creation, indicated bycreated_timestamp_ms
. -
started
: Sort jobs by the time processing started, indicated bystarted_timestamp_ms
. -
ended
: Sort jobs by the time processing ended, indicated byended_timestamp_ms
.
-
-
direction:
typing.Optional[Direction]
Specify the order in which to sort the jobs. Defaults to descending order.
-
asc
: Sort in ascending order (chronological, with the oldest records first). -
desc
: Sort in descending order (reverse-chronological, with the newest records first).
-
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.expression_measurement.batch.start_inference_job(...)
-
-
-
Start a new measurement inference job.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.expression_measurement.batch.start_inference_job( urls=["https://hume-tutorials.s3.amazonaws.com/faces.zip"], notify=True, )
-
-
-
models:
typing.Optional[Models]
Specify the models to use for inference.
If this field is not explicitly set, then all models will run by default.
-
transcription:
typing.Optional[Transcription]
-
urls:
typing.Optional[typing.Sequence[str]]
URLs to the media files to be processed. Each must be a valid public URL to a media file (see recommended input filetypes) or an archive (
.zip
,.tar.gz
,.tar.bz2
,.tar.xz
) of media files.If you wish to supply more than 100 URLs, consider providing them as an archive (
.zip
,.tar.gz
,.tar.bz2
,.tar.xz
).
-
text:
typing.Optional[typing.Sequence[str]]
— Text supplied directly to our Emotional Language and NER models for analysis.
-
callback_url:
typing.Optional[str]
— If provided, aPOST
request will be made to the URL with the generated predictions on completion or the error message on failure.
-
notify:
typing.Optional[bool]
— Whether to send an email notification to the user upon job completion/failure.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.expression_measurement.batch.get_job_details(...)
-
-
-
Get the request details and state of a given job.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.expression_measurement.batch.get_job_details( id="job_id", )
-
-
-
id:
str
— The unique identifier for the job.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.expression_measurement.batch.get_job_predictions(...)
-
-
-
Get the JSON predictions of a completed inference job.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.expression_measurement.batch.get_job_predictions( id="job_id", )
-
-
-
id:
str
— The unique identifier for the job.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-
client.expression_measurement.batch.start_inference_job_from_local_file(...)
-
-
-
Start a new batch inference job.
-
-
-
from hume import HumeClient client = HumeClient( api_key="YOUR_API_KEY", ) client.expression_measurement.batch.start_inference_job_from_local_file()
-
-
-
file: `from future import annotations
typing.List[core.File]` — See core.File for more documentation
-
json:
typing.Optional[InferenceBaseRequest]
— Stringified JSON object containing the inference job configuration.
-
request_options:
typing.Optional[RequestOptions]
— Request-specific configuration.
-
-