Terjemahan mesin · Versi asli bahasa Inggris

FunctionGemma 270M

Function Gemma 270M adalah Gemma 3 fine- turunan disetel untuk perangkat terstruktur dan panggilan fungsi. Alih-alih teks free- form, ia memancarkan sebuah strict <start_function_call>call:NAME{...}<end_function_call> tata bahasa yang digunakan oleh SDK FunctionCall nilai. Kira-kira 283 MB pada disk, itu cukup kecil untuk dimuat bersama ASR + TTS baris pipa di telepon-kelas perangkat keras dan berfungsi sebagai "router" yang mengubah pernyataan pengguna menjadi faktur alat.

Fungsinya - Memanggil, On- Divais

FunctionGemma slot menjadi agen suara di mana pun Anda akan dinyatakan panggilan host LLM untuk alat routing. Tata bahasa ketat dengan konstruksi, sehingga Anda mendapatkan kembali parsed FunctionCall objek langsung - tidak ada perbaikan JSON, tidak ada skema-mode mendorong.

Platform

PlatformFormatUkuranHuggingFace
Apple (macOS / iOS)CoreML~ 283 MBaufklarer / FunctionGemma-270M-CoreML
Android (dan Linux / Windows melalui Speech Core)LiteRT- LM~ 283 MBsoniqo/FunctionGemma-270M-LiteRT-LM

Grammar

Model ini dilatih untuk memancarkan satu panggilan (atau urutan panggilan) yang dibungkus dalam dua token sentinel:

<start_function_call>call:set_timer{"minutes": 5, "label": "tea"}<end_function_call>

SDK parses setiap panggilan ke typed FunctionCall(name:, arguments:) nilai. Argumen diterjemahkan sebagai JSON sehingga Anda dapat memetakan mereka langsung ke Swift Codable atau Kotlin @Serializable kelas data.

Swift (Apple, CoreML)

Pada platform Apple FunctionGemma terkena melalui speech-swift sebagai FunctionGemma Ini memuat model CoreML dari HuggingFace pada penggunaan pertama dan berjalan pada Neural Engine.

import FunctionGemma

let model = try await FunctionGemma.fromPretrained()

let tools = """
- set_timer(minutes: Int, label: String)
- get_weather(city: String)
"""

let calls = try model.callFunctions(
    tools: tools,
    userMessage: "Set a 5 minute tea timer"
)

for call in calls {
    print(call.name)       // "set_timer"
    print(call.arguments)  // ["minutes": 5, "label": "tea"]
}

Kotlin (Android, LiteRT- LM)

Pada Android, model tersebut diekspos melalui speech-android sebagai audio.soniqo.speech.llm.FunctionGemmaIni adalah bring- Anda sendiri-runtime adaptor: Anda menyediakan LiteRtLmRuntime instance (kapal SDK baku), dan FunctionGemma menangani parsing template prompt dan tata bahasa.

import audio.soniqo.speech.llm.FunctionGemma
import audio.soniqo.speech.llm.LiteRtLmRuntime

val runtime = LiteRtLmRuntime.fromPretrained(context)
val model = FunctionGemma(runtime)

val tools = """
- set_timer(minutes: Int, label: String)
- get_weather(city: String)
""".trimIndent()

val calls = model.callFunctions(
    tools = tools,
    userMessage = "Set a 5 minute tea timer",
)

for (call in calls) {
    println(call.name)       // "set_timer"
    println(call.arguments)  // {"minutes": 5, "label": "tea"}
}

Membaca Lebih Jauh