Groq
Provider groq. Adapter sobre o SDK groq, que fala o mesmo dialeto
chat.completions da OpenAI — por isso herda de _OpenAICompatible.
pip install "jangada-ai[groq]"provider=:"groq"- Variável de ambiente:
GROQ_API_KEY - Diferença para a OpenAI:
supports_parse_helper = False(não tem.parse()nativo).
from jangada_ai import LLM
llm = LLM("groq", "llama-3.3-70b-versatile")O que faz
- Texto e streaming — foco em latência muito baixa.
- Structured output (
parse): como não há helper.parse, usaresponse_format={"type":"json_schema",...}e valida commodel_validate_json. - Vision (
images=): suportado apenas em modelos com visão (ex.: família Llama vision). Modelos de texto puro recusam imagem. - Documentos (
files=): extração de texto local. - Transcrição de áudio (
transcribe): endpoint dedicado (compatível com o da OpenAI). Modelos:whisper-large-v3,whisper-large-v3-turbo(rápido).
Estrutura e quirks
- Parâmetros:
temperature,max_tokens,top_p,stop,seed. Semtop_k. - Mesma base da OpenAI: a tradução de mensagens, structured e áudio
reaproveitam
_OpenAICompatible; só mudamsdk_module/sync_class/async_class/supports_parse_helper. - Resposta (
Completion): igual à OpenAI (text,usage,raw).
Quando escolher Groq
Velocidade e custo de inferência baixos — ótimo para transcrição em lote
(whisper-large-v3-turbo) e respostas de baixa latência. Combine como
fallback ou primário com OpenAI (mesmo dialeto). Veja
Transcrição de áudio e Retry e fallback.
O que mudou na 1.9.0
- Tools nativas: nos modelos
groq/compound*,web_search(),web_fetch()ecode_execution()ligam as tools embutidas (compound_custom); nosopenai/gpt-oss-*,web_search()virabrowser_searchecode_execution()viracode_interpreter. O compound não aceita function tools do usuário na mesma chamada. Veja Tools nativas. - Structured output: campos com default passam a constar em
requiredno modo strict (o Groq recusava o schema), e o fallback para JSON Object mode dispara em mais mensagens de erro.