一键导入
groq-api
Groq API syntax — Whisper transcription, audio processing, and prompt-based jargon guidance. Use when calling Groq endpoints or transcribing audio.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Groq API syntax — Whisper transcription, audio processing, and prompt-based jargon guidance. Use when calling Groq endpoints or transcribing audio.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Semver release workflow — bump version, tag, push, verify CI. Use when releasing, bumping version, updating version, or when the user says 'release', 'bump', 'major', 'minor', 'patch', 'update version', 'new version', 'cut a release', 'tag', or 'goreleaser'.
Mise dev tool manager — installing tools, running mise-managed commands, and configuring .mise.toml. Use when installing tools, running CLI commands that aren't found, or setting up project environments.
Reference for the promptherder CLI — syncs AI agent rules, skills, and workflows from herd repos to agent targets. Use when installing, updating, or troubleshooting prompt distribution.
Docker best practices for multi-stage Alpine builds — security patches, image pinning, and layer optimization. Use when creating, reviewing, or updating Dockerfiles.
Tekmetric REST API — authentication, paginated endpoints, sync patterns, and undocumented behaviors. Use when integrating with Tekmetric shop management data (customers, vehicles, repair orders, employees, appointments).
DaisyUI v5 component library for Tailwind CSS — semantic UI classes, themes, layout patterns, drawer/sidebar gotchas, and component quick reference. Use when building, styling, or debugging UI with DaisyUI, Tailwind components, or DaisyUI themes.
| name | groq-api |
| description | Groq API syntax — Whisper transcription, audio processing, and prompt-based jargon guidance. Use when calling Groq endpoints or transcribing audio. |
All requests: Authorization: Bearer <GROQ_API_KEY>
Base URL: https://api.groq.com
POST /openai/v1/audio/transcriptions
Content-Type: multipart/form-data
Authorization: Bearer $GROQ_API_KEY
| Field | Required | Description |
|---|---|---|
model | yes | whisper-large-v3 or whisper-large-v3-turbo or distil-whisper-large-v3-en |
file | yes* | Audio file (flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm) |
url | yes* | Audio URL (alternative to file upload, supports Base64URL) |
language | no | ISO-639-1 code (e.g. en). Improves accuracy and latency. |
prompt | no | Guide transcription style/vocabulary. Match audio language. |
response_format | no | json (default), text, verbose_json |
temperature | no | 0-1. Default 0. Higher = more random. |
timestamp_granularities[] | no | word, segment. Requires verbose_json. |
*Either file or url must be provided.
json format){
"text": "Your transcribed text appears here...",
"x_groq": {
"id": "req_unique_id"
}
}
verbose_json format){
"text": "Full transcript...",
"segments": [
{
"start": 0.0,
"end": 5.2,
"text": "Segment text..."
}
],
"x_groq": { "id": "req_unique_id" }
}
| Model | Owner | Speed | Accuracy |
|---|---|---|---|
whisper-large-v3 | OpenAI | Standard | Best |
whisper-large-v3-turbo | OpenAI | Faster | Slightly lower |
distil-whisper-large-v3-en | Hugging Face | Fastest | English-only |
Recommendation: Use whisper-large-v3 for best accuracy with domain-specific jargon.
The prompt field biases the model toward specific vocabulary. Include terms the caller might say:
Tekmetric, JSON, API, ROsearch, R-O Search, RO Search, voicemail, integration,
webhook, Shopmonkey, Mitchell, CARFAX, parts ordering, repair order, invoice,
DMS, shop management, estimate
Rules:
POST /openai/v1/audio/translations
Content-Type: multipart/form-data
Authorization: Bearer $GROQ_API_KEY
Translates audio into English. Same parameters as transcription minus language.
curl https://api.groq.com/openai/v1/audio/transcriptions \
-H "Authorization: Bearer $GROQ_API_KEY" \
-H "Content-Type: multipart/form-data" \
-F file="@./recording.mp3" \
-F model="whisper-large-v3" \
-F language="en" \
-F prompt="Tekmetric, JSON, API, ROsearch" \
-F response_format="json"
func (c *GroqClient) Transcribe(ctx context.Context, audioData io.Reader, filename string) (string, error) {
var buf bytes.Buffer
w := multipart.NewWriter(&buf)
w.WriteField("model", "whisper-large-v3")
w.WriteField("language", "en")
w.WriteField("response_format", "json")
w.WriteField("prompt", "Tekmetric, JSON, API, ROsearch, R-O Search")
part, err := w.CreateFormFile("file", filename)
if err != nil {
return "", fmt.Errorf("groq create form file: %w", err)
}
if _, err := io.Copy(part, audioData); err != nil {
return "", fmt.Errorf("groq copy audio: %w", err)
}
w.Close()
req, _ := http.NewRequestWithContext(ctx, "POST",
"https://api.groq.com/openai/v1/audio/transcriptions", &buf)
req.Header.Set("Authorization", "Bearer "+c.apiKey)
req.Header.Set("Content-Type", w.FormDataContentType())
resp, err := c.httpClient.Do(req)
if err != nil {
return "", fmt.Errorf("groq transcribe: %w", err)
}
defer resp.Body.Close()
if resp.StatusCode != http.StatusOK {
body, _ := io.ReadAll(resp.Body)
return "", fmt.Errorf("groq transcribe: status %d: %s", resp.StatusCode, body)
}
var result struct {
Text string `json:"text"`
}
if err := json.NewDecoder(resp.Body).Decode(&result); err != nil {
return "", fmt.Errorf("groq decode: %w", err)
}
return result.Text, nil
}
prompt field is for vocabulary guidance only — it will not be prepended to transcripttemperature=0 is the default and recommended for transcription accuracywhisper-large-v3-turbo is faster but may miss subtle jargon — test bothx-ratelimit-* response headers