phonellm-mini-alpha-2

Text Generation • daily-co

@cf/daily-co/phonellm-mini-alpha-2

  • Cloudflare-hosted
  • Function calling

PhoneLLM is an open model tuned for voice agents. The model is based on Nemotron Nano 30B base capabilities and excels at typical voice agent tasks with thinking disabled.

Model Info
Context Window ↗ 262,140 tokens
Function calling ↗ Yes
Unit Pricing $0.06 per M input tokens, $0.24 per M output tokens

Playground

Try out this model with Workers AI LLM Playground. It does not require any setup or authentication and is an instant way to preview and test a model directly in the browser.

Launch the LLM Playground

Usage

export interface Env {
  AI: Ai;
}

export default {
  async fetch(request, env): Promise<Response> {

    const messages = [
      { role: "system", content: "You are a friendly assistant" },
      {
        role: "user",
        content: "What is the origin of the phrase Hello, World",
      },
    ];

    const stream = await env.AI.run("@cf/daily-co/phonellm-mini-alpha-2", {
      messages,
      stream: true,
    });

    return new Response(stream, {
      headers: { "content-type": "text/event-stream" },
    });
  },
} satisfies ExportedHandler<Env>;
export interface Env {
  AI: Ai;
}

export default {
  async fetch(request, env): Promise<Response> {

    const messages = [
      { role: "system", content: "You are a friendly assistant" },
      {
        role: "user",
        content: "What is the origin of the phrase Hello, World",
      },
    ];
    const response = await env.AI.run("@cf/daily-co/phonellm-mini-alpha-2", { messages });

    return Response.json(response);
  },
} satisfies ExportedHandler<Env>;
import os
import requests

ACCOUNT_ID = "your-account-id"
AUTH_TOKEN = os.environ.get("CLOUDFLARE_AUTH_TOKEN")

prompt = "Tell me all about PEP-8"
response = requests.post(
  f"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/daily-co/phonellm-mini-alpha-2",
    headers={"Authorization": f"Bearer {AUTH_TOKEN}"},
    json={
      "messages": [
        {"role": "system", "content": "You are a friendly assistant"},
        {"role": "user", "content": prompt}
      ]
    }
)
result = response.json()
print(result)
curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run/@cf/daily-co/phonellm-mini-alpha-2 \
  -X POST \
  -H "Authorization: Bearer $CLOUDFLARE_AUTH_TOKEN" \
  -d '{ "messages": [{ "role": "system", "content": "You are a friendly assistant" }, { "role": "user", "content": "Why is pizza so good" }]}'

OpenAI compatible endpoints

Workers AI also supports OpenAI compatible API endpoints for /v1/chat/completions and /v1/embeddings. For more details, refer to Configurations .

Parameters

Input

model

stringID of the model to use (for example, '@cf/daily-co/phonellm-mini-alpha-2').

▶audio{}

objectParameters for audio output. Required when modalities includes 'audio'.

frequency_penalty

number | nullPenalizes new tokens based on their existing frequency in the text so far.

logit_bias

object | nullModify the likelihood of specified tokens appearing in the completion. Maps token IDs to bias values from -100 to 100.

logprobs

boolean | nullWhether to return log probabilities of the output tokens.

top_logprobs

integer | nullHow many top log probabilities to return at each token position (0-20). Requires logprobs=true.

max_tokens

integer | nullThe maximum number of tokens to generate.

max_completion_tokens

integer | nullAn upper bound for the number of tokens that can be generated for a completion.

metadata

object | nullSet of key-value pairs that can be attached to the object.

modalities

array | nullOutput types requested from the model.

n

integer | nullHow many chat completion choices to generate for each input message.

parallel_tool_calls

booleandefault: trueWhether to enable parallel function calling during tool use.

▶prediction{}

object

presence_penalty

number | nullPenalizes new tokens based on whether they appear in the text so far.

▶chat_template_kwargs{}

objectChat-template controls.

▶response_format

one ofSpecifies the format the model must output.

seed

integer | nullIf specified, the system will make a best effort to sample deterministically.

▶stop

one of

store

boolean | nullWhether to store the output for model distillation or evaluation.

stream

boolean | nullIf true, partial message deltas will be sent as server-sent events.

▶stream_options{}

object

temperature

number | nullSampling temperature between 0 and 2.

▶tool_choice

one ofControls which (if any) tool is called by the model. 'none' = no tools, 'auto' = model decides, 'required' = must call a tool.

▶tools[]

arrayA list of tools the model may call.

top_p

number | nullNucleus sampling: considers the results of the tokens with top_p probability mass.

user

stringA unique identifier representing your end-user, for abuse monitoring.

▶web_search_options{}

objectOptions for the web search tool (when using built-in web search).

▶function_call

one of

▶functions[]

arrayminItems: 1maxItems: 128

prompt

stringrequiredminLength: 1The input text prompt for the model to generate a response.

Output

<details>

<summary>Synchronous — Send a request and receive a complete response</summary>

id

<code>string</code>A unique identifier for the chat completion.

object

<code>string</code>

created

<code>integer</code>Unix timestamp (seconds) of when the completion was created.

model

<code>string</code>The model used for the chat completion.

▶choices[]

<code>array</code>minItems: 1

▶usage{}

<code>object</code>

system_fingerprint

<code>string | null</code>

</details>

<details>

<summary>Streaming — Send a request with stream: true and receive server-sent events</summary>

type

<code>string</code>

contentType

<code>text/event-stream</code>

format

<code>binary</code>

</details>

API Schemas (Raw)

SynchronousInput Open Download

SynchronousOutput Open Download

StreamingInput Open Download

StreamingOutput Open Download

Was this helpful?

YesNo

On this page

phonellm-mini-alpha-2 - 图1Docs

{"@context":"https://schema.org","@type":"TechArticle","@id":"https://developers.cloudflare.com/workers-ai/models/phonellm-mini-alpha-2/#page","headline":"phonellm-mini-alpha-2","description":"PhoneLLM is an open model tuned for voice agents. The model is based on Nemotron Nano 30B base capabilities and excels at typical voice agent tasks with thinking disabled.","url":"https://developers.cloudflare.com/workers-ai/models/phonellm-mini-alpha-2/","inLanguage":"en","image":"https://developers.cloudflare.com/og-docs.png","publisher":{"@type":"Organization","name":"Cloudflare","description":"One platform for your apps, agents, and workforce. Build, secure, and scale without managing infrastructure","url":"https://www.cloudflare.com/","sameAs":["https://github.com/cloudflare","https://www.linkedin.com/company/cloudflare","https://x.com/cloudflare"],"logo":{"@type":"ImageObject","url":"https://developers.cloudflare.com/logo.svg"},"address":{"@type":"PostalAddress","streetAddress":"101 Townsend St","addressLocality":"San Francisco","addressRegion":"CA","postalCode":"94107","addressCountry":"US"},"contactPoint":[{"@type":"ContactPoint","contactType":"Customer Support","url":"https://support.cloudflare.com/","availableLanguage":["English"]},{"@type":"ContactPoint","contactType":"Sales","url":"https://www.cloudflare.com/contact/","availableLanguage":["English"]}]},"isPartOf":{"@type":"WebSite","@id":"https://developers.cloudflare.com/#website","name":"Cloudflare Docs","url":"https://developers.cloudflare.com/"}}


description: Aura is a context-aware text-to-speech (TTS) model that applies natural pacing, expressiveness, and fillers based on the context of the provided text. The quality of your text input directly impacts the naturalness of the audio output. title: aura-1 image: https://developers.cloudflare.com/og-docs.png


Skip to content

Documentation Index
Fetch the complete documentation index at: https://developers.cloudflare.com/llms.txt
Use this file to discover all available pages before exploring further.

Deepgram logo