Nesta página, descrevemos algumas práticas recomendadas e considerações para modelos de comando de servidor, incluindo recursos ainda não compatíveis. Muitos desses recursos vão ficar disponíveis conforme os modelos de comando do servidor evoluem. Confira as notas da versão para ver as atualizações.
Práticas recomendadas
Muitas dessas práticas recomendadas também estão detalhadas em Gerenciar seus modelos.
Controle de versões dos modelos
Crie IDs de modelo anexados a uma versão que use o controle de versão semântico (semver).
Use Firebase Remote Config para mudar facilmente o modelo e outros valores na solicitação.
Proteger seu modelo
Evite editar modelos usados na produção, a menos que você tenha testado completamente a mudança.
Bloqueie o modelo antes de ir para a produção.
Bloquear um modelo serve como proteção contra edições não intencionais, mas nãoimpede totalmente as edições. Um membro do projeto com as permissões adequadas sempre pode desbloquear um modelo para editá-lo.
Recomendamos bloquear os modelos que estão sendo usados ativamente pelo código, especialmente o código de produção.
Proteger o uso do Gemini API
Escreva uma validação de entrada forte para suas variáveis de entrada, o que pode ajudar com o seguinte:
- Pode ajudar a proteger contra injeção de comando.
- Pode ajudar a garantir que as solicitações sejam bem-sucedidas e as respostas sejam as esperadas.
Aplique o modo somente modelo ao seu projeto do Firebase para que todas as solicitações de Gemini API via Firebase AI Logic usem um modelo de comando do servidor.
Recursos ainda não compatíveis com modelos de comandos do servidor
Muitos desses recursos vão ser disponibilizados conforme os modelos de comando do servidor evoluírem. Confira as notas da versão para ver as atualizações.
Os recursos de Firebase AI Logic ainda não são compatíveis com os modelos
Os seguintes recursos padrão do Firebase AI Logic ainda não são compatíveis com os modelos de comando do servidor:
- Streaming bidirecional (Gemini Live API)
- Inferência híbrida ou no dispositivo
- Restringir a saída a uma lista de tipos enumerados
Além disso, se você usar o AI Monitoring no console do Firebase, o ID do modelo ainda não será preenchido em nenhum registro.
Elementos comuns do Dotprompt que ainda não são compatíveis com os modelos
Os modelos de comando do servidor provavelmente vão oferecer suporte em breve aos seguintes elementos comuns do Dotprompt:
Usar a especificação de esquema JSON para esquemas de entrada e saída no frontmatter.
- Essa especificação também não é compatível com solicitações de modelo que não são de servidor. No momento, oferecemos suporte apenas à especificação de esquema OpenAPI.
Como declarar uma definição de campo de caractere curinga usando
*.Usar
@keyou, de modo geral, iterar nos campos de uma entrada de objeto (que é o caso em que@keyé relevante).Usando
@root, que permite referenciar o contexto da variável raiz, independentemente dothisatual.
Os modelos de comando do servidor provavelmente não vão aceitar os seguintes elementos comuns do Dotprompt:
- Usar parciais, que são snippets de modelo reutilizáveis que podem ser incluídos em outros modelos.
Outras considerações
Por padrão, quando você usa a interface guiada no console do Firebase, provisionamos o modelo em todas as regiões com disponibilidade para o Firebase AI Logic. Se você usar o Agent Platform Gemini API (formerly Vertex AI) e se o caso de uso exigir restrições baseadas em local, será possível especificar o local do modelo usando a API REST.
Se você quiser fornecer um modelo de comando do servidor como um arquivo (em vez de usar a interface guiada do console do Firebase), use a API REST. Os modelos de comando do servidor não são compatíveis com o esquema definido no código do app e transmitido para o modelo.
Mesmo que o modelo esteja no servidor, ele não pode interagir diretamente com os outros recursos do lado do servidor do seu projeto do Firebase (como um banco de dados), exceto para URLs Cloud Storage for Firebase (que podem ser fornecidos como variáveis de entrada).