Gemma3
O Gemma3 é um modelo projetado para implementação rápida em dispositivos, oferecendo recursos avançados como suporte multilíngue, raciocínio textual e visual, janelas de contexto expandidas, chamada de função e modelos quantizados para alto desempenho.
Detalhes do modelo
Categoria | Detalhes |
---|---|
Nome do modelo | Gemma3 |
Versão | 27B INT4 |
Categoria do modelo | LLM |
Tamanho | 27B parâmetros |
Modelo HuggingFace | ISTA-DASLab/gemma-3-27b-it-GPTQ-4b-128g |
Endpoint compatível com a OpenAI | Chat Completions |
Licença | Gemma |
Capacidades
Recurso | Detalhes |
---|---|
Tool Calling | ❌ |
Suporte a longo prazo da Azion (LTS) | ✅ |
Tamanho do contexto | 23k |
Suporta LoRA | ✅ |
Dados de entrada | Texto + Imagem |
Uso
Exemplo básico de chat completion
Este é um exemplo básico de chat completion usando este modelo:
const modelResponse = await Azion.AI.run("ista-daslab-gemma-3-27b-it-gptq-4b-128g", { "stream": true, "messages": [ { "role": "system", "content": "You are a helpful assistant." }, { "role": "user", "content": "Name the european capitals" } ]})
Propriedade | Tipo | Descrição |
---|---|---|
stream | boolean | Define se a resposta é transmitida via stream. |
messages[] | array | Array de mensagens de chat formando o prompt. |
messages[].role | string | O papel do remetente da mensagem. |
messages[].content | string | O conteúdo da mensagem. |
Exemplo de resposta:
{ "id": "chatcmpl-e27716424abf4b3f891ff4850470cb09", "object": "chat.completion", "created": 1746821581, "model": "casperhansen-mistral-small-24b-instruct-2501-awq", "choices": [ { "index": 0, "message": { "role": "assistant", "reasoning_content": null, "content": "Sure! Here is a list of some European capitals...", "tool_calls": [] }, "logprobs": null, "finish_reason": "stop", "stop_reason": null } ], "usage": { "prompt_tokens": 9, "total_tokens": 527, "completion_tokens": 518, "prompt_tokens_details": null }, "prompt_logprobs": null}
Propriedade | Tipo | Descrição |
---|---|---|
id | string | Identificador único para a resposta do chat. |
object | string | O tipo de objeto. |
created | number | Timestamp em formato Unix de quando a conclusão foi criada. |
model | string | O nome do modelo usado para a conclusão. |
choices[] | array | Array de escolhas possíveis na resposta. |
choices[].index | number | O índice da escolha no array. |
choices[].message.role | string | O papel do remetente da mensagem. |
choices[].message.reasoning_content | string | O conteúdo de raciocínio fornecido pelo assistente. |
choices[].message.content | string | O conteúdo real da resposta do assistente. |
choices[].message.tool_calls[] | array | Array de chamadas de ferramenta feitas durante a resposta. |
choices[].logprobs | number | Probabilidades logarítmicas para os tokens. |
choices[].finish_reason | string | O motivo pelo qual a resposta terminou. |
choices[].stop_reason | string | O motivo pelo qual a resposta foi interrompida. |
usage.prompt_tokens | number | O número de tokens usados no prompt. |
usage.total_tokens | number | O total de tokens usados. |
usage.completion_tokens | number | O número de tokens usados na conclusão. |
usage.prompt_tokens_details | string | Detalhes adicionais sobre os tokens do prompt. |
prompt_logprobs | number | Probabilidades logarítmicas para os tokens do prompt. |
Exemplo multimodal (texto + imagem)
Este é um exemplo de requisição multimodal usando este modelo:
const modelResponse = await Azion.AI.run("ista-daslab-gemma-3-27b-it-gptq-4b-128g", { "stream": true, "messages": [ { "role": "system", "content": "You are a helpful assistant." }, { "role": "user", "content": [ { "type": "text", "text": "What is in this image?" }, { "type": "image_url", "image_url": { "url": "https://example.com/image.jpg" } } ] } ]})
Propriedade | Tipo | Descrição |
---|---|---|
stream | boolean | Indica se a resposta é transmitida via stream. |
messages[] | array | Array de objetos de mensagem, contendo as mensagens do sistema e do usuário. |
messages[].role | string | O papel do remetente da mensagem. |
messages[].content | string | O conteúdo da mensagem. |
messages[].content[].type | string | O tipo do item de conteúdo. |
messages[].content[].text | string | Conteúdo da mensagem (apenas se type for "text" ) |
messages[].content[].image_url | string | Conteúdo da mensagem (apenas se type for "image_url" ) |
messages[].content[].image_url.url | string | A URL real da imagem. |
A resposta será semelhante à do exemplo básico de conclusão de chat.
Schema JSON
{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "required": [ "messages" ], "properties": { "messages": { "type": "array", "items": { "$ref": "#/components/schemas/Message" } }, "temperature": { "type": "number", "minimum": 0, "maximum": 2 }, "top_p": { "type": "number", "minimum": 0, "maximum": 1, "default": 1 }, "n": { "type": "integer", "minimum": 1, "default": 1 }, "stream": { "type": "boolean", "default": false }, "max_tokens": { "type": "integer", "minimum": 1 }, "presence_penalty": { "type": "number", "minimum": -2, "maximum": 2, "default": 0 }, "frequency_penalty": { "type": "number", "minimum": -2, "maximum": 2, "default": 0 } }, "components": { "schemas": { "Message": { "oneOf": [ { "$ref": "#/components/schemas/SystemMessage" }, { "$ref": "#/components/schemas/UserMessage" }, { "$ref": "#/components/schemas/AssistantMessage" } ] }, "SystemMessage": { "type": "object", "required": [ "role", "content" ], "properties": { "role": { "type": "string", "enum": [ "system" ] }, "content": { "$ref": "#/components/schemas/TextContent" } } }, "UserMessage": { "type": "object", "required": [ "role", "content" ], "properties": { "role": { "type": "string", "enum": [ "user" ] }, "content": { "oneOf": [ { "type": "string" }, { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/TextContentItem" }, { "$ref": "#/components/schemas/ImageContentItem" } ] } } ] } } }, "AssistantMessage": { "oneOf": [ { "$ref": "#/components/schemas/AssistantMessageWithoutToolCalls" } ] }, "AssistantMessageWithoutToolCalls": { "type": "object", "required": [ "role", "content" ], "properties": { "role": { "type": "string", "enum": [ "assistant" ] }, "content": { "$ref": "#/components/schemas/TextContent" } }, "not": { "required": [ "tool_calls" ] } }, "TextContent": { "oneOf": [ { "type": "string" }, { "type": "array", "items": { "$ref": "#/components/schemas/TextContentItem" } } ], "description": "Text content that can be provided either as a simple string or as an array of TextContentItem objects" }, "ImageContent": { "type": "array", "items": { "$ref": "#/components/schemas/ImageContentItem" } }, "TextContentItem": { "type": "object", "required": [ "type", "text" ], "properties": { "type": { "type": "string", "enum": [ "text" ] }, "text": { "type": "string" } } }, "ImageContentItem": { "type": "object", "required": [ "type", "image_url" ], "properties": { "type": { "type": "string", "enum": [ "image_url" ] }, "image_url": { "type": "object", "required": [ "url" ], "properties": { "url": { "type": "string", "format": "uri" } } } } } } }}