Sesame: CSM 1B
Sesame CSM 1B converts supplied text into speech through POST /v1/audio/speech. Use sesame/csm-1b with the actual script, select one of its named voices, and request MP3 or PCM audio. It suits a workflow that turns a prepared message, explanation or narration segment into an audio file for playback or editing.
About the model
This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.
Sesame CSM 1B is a text-to-speech model available under the exact ID sesame/csm-1b. Supply the words to be spoken and retain the resulting audio as a file. A practical brief can be a prepared product explanation, a spoken application message or a narration segment that will be placed in an edit. Prepare the script as the intended spoken text, including the names, numbers and wording the listener needs to hear.
Send POST /v1/audio/speech with application/json. The required fields are model, set to sesame/csm-1b, and input, containing the script as a string. Read a script file as UTF-8 text and place its contents in input rather than supplying a local filename. Keeping the spoken content in that field gives the generation a concrete script to follow and lets the application retain the exact wording alongside the resulting file.
The named voice choices are conversational_a, conversational_b, read_speech_a, read_speech_b, read_speech_c, read_speech_d and none. Preserve those identifiers exactly in the voice field. Select a voice explicitly when a workflow needs a repeatable request configuration, and keep that chosen setting with the script and output. Listen to a representative segment to decide which available voice fits the intended use.
Use response_format to choose mp3 or pcm. MP3 is delivered as audio/mpeg and provides a file that can be passed to a player or editing workflow that accepts MP3. PCM is delivered as audio/pcm with 16-bit little-endian samples; retain its actual audio metadata for the application that will interpret the bytes. Set the format explicitly so the file and downstream decoder agree. The documented request example uses speed:1; keep that baseline when preparing a request with the established controls.
The successful response contains raw audio bytes. Save the response body as audio and retain the response headers and original request identity with the script, voice and requested format. Treat completion of that response as the point at which the returned audio can be kept and reviewed. Check the spoken names, numbers and sentence boundaries against the source script before adding the result to a longer production. If a request is interrupted after submission, preserve its original identity and response information while checking the existing outcome.
Ailoot Ultra · Speech POST /v1/audio/speech sesame/csm-1b
sesame/csm-1bOverview
Sesame CSM 1B converts supplied text into speech through POST /v1/audio/speech. Use sesame/csm-1b with the actual script, select one of its named voices, and request MP3 or PCM audio. It suits a workflow that turns a prepared message, explanation or narration segment into an audio file for playback or editing.
- Accepted inputs
- Text
- Results
- Audio
Available in Ailoot · inputs & methods
Ailoot Ultra · Speech POST /v1/audio/speech
- Input types
text- Output types
audio- Output format
- mp3,pcm
| Field | Type | Requirement | Values & limits | Default |
|---|---|---|---|---|
Fieldmodel | Typestring | RequirementRequired | Values & limits sesame/csm-1b | Default— |
Fieldinput | Typestring | RequirementRequired | Values & limits | Default— |
Fieldvoice | Typestring | RequirementOptional | Values & limits conversational_a, conversational_b, read_speech_a, read_speech_b, read_speech_c, read_speech_d, none | Default— |
Fieldresponse_format | Typestring | RequirementOptional | Values & limits mp3, pcm | Default— |
Fieldspeed | Typenumber | RequirementOptional | Values & limits | Default— |
Method parameters and lifecycle
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, input |
Parameteroptional | Contractvoice, response_format, speed |
Parametermaterial_types | Contracttext |
Parameterconditions | Contract |
Lifecycle: synchronous_result_then_owned_library
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Pricing
Tariff references do not add request options. Supported parameters are listed for the selected method.
- Fast mode
- Not specified When fast mode is selected
- Flex mode
- Not specified When flex mode is selected
- Maximum reasoning effort
- Not specified When maximum reasoning effort uses the default adjustment
Ailoot rates
Prices by configuration
Match each charge to the conditions shown. Use one rate for each set of alternative configurations.
| Configuration | Rate schedule | Billing quantity | Billing unit | Charge |
|---|---|---|---|---|
| ConfigurationBase token rates | Rate scheduleBase rate | Billing quantity— | Billing unit— | Charge Input · Input tokens — / 1K tokens Output · Output tokens — / 1K tokens Input · Cache read — / 1K tokens Input · Cache write — / 1K tokens Input · Cache write, 1 hour — / 1K tokens |
| Configurationinput character | Rate schedule— | Billing quantity— | Billing unitper input character | Charge Input · input character $0.000014 per input character |
| ConfigurationPer request | Rate schedule— | Billing quantityone request | Billing unit— | Charge Input $0 per request |
Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. How reservation and settlement work →
Example requests
Ailoot Ultra · Speech
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"input": "Hello world", "model": "sesame/csm-1b", "response_format": "mp3", "speed": 1, "voice": "conversational_a"}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
# Submit once. Retain the complete result, original identifiers and every response header.
Receive and save results
Ailoot Ultra · Speech
mp3,pcm
GET /v1/media/assetsGET /v1/media/assets/{asset_id}
Keep all completed results
Keep every complete returned response, file and content part.
Retain the complete binary audio and response headers. Use the actual output Content-Type; no extra container or bit depth is inferred.
If the original response needs checking
Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.
Aliases
Model aliases
Ailoot Ultra sesame/csm-1b
Method path aliases
Use the method paths shown above.
Related caller IDs
FAQ · Sesame: CSM 1B
- What inputs and results are available?
POST /v1/audio/speech·sesame/csm-1b:text→audio- Which fields does the request use?
POST /v1/audio/speech·sesame/csm-1b:model,input,voice,response_format,speed