TypeSafe Jev / API System One
O TypeSafe Jev toma decisões probabilísticas sobre texto, dados estruturados e imagens. Uma requisição pode combinar perguntas noul, choice e score; o Jev 1.14 também permite localização com Box. Não é uma API genérica de completions de chat e não oferece chamadas de ferramentas do Chat.
Endpoint, autenticação e modelo fixo
POST https://api.icodeeasy.cc/v1/systemone
Authorization: Bearer <YOUR_API_KEY>
Content-Type: application/json
Somente o TypeSafe Jev 1.14 é público, com o ID de modelo fixo jev-1.14.0. Aliases que podem mudar entre versões não são oferecidos:
| ID do modelo | Entrada de imagem | Box | Contexto longo de 262K |
|---|---|---|---|
jev-1.14.0 | Compatível | Compatível | Compatível |
jev-latest, jev-preview e outros nomes não fazem parte deste catálogo público. As respostas são JSON não streaming. Não envie stream nem use System One como /v1/chat/completions, /v1/messages ou /v1/responses.
Texto e state estruturado
state pode ser string, objeto ou array. Você nomeia cada pergunta, e a resposta reutiliza esses nomes e tipos em answers. Este exemplo combina decisão sim/não, escolha fixa e pontuação ordenada:
curl --request POST 'https://api.icodeeasy.cc/v1/systemone' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"model": "jev-1.14.0",
"state": "I was charged twice for my subscription. Please refund the extra charge today.",
"questions": {
"is_billing": {
"type": "noul",
"instructions": "Is this message about billing?"
},
"department": {
"type": "choice",
"instructions": "Which team should handle this request?",
"criteria": {
"billing": "Duplicate charges, invoices, refunds, and payment failures",
"technical": "Product functionality and technical troubleshooting",
"other": "Requests outside billing and technical support"
}
},
"urgency": {
"type": "score",
"instructions": "How urgent is the request?",
"criteria": [
"No deadline and no immediate impact",
"Needs attention soon but service remains usable",
"Immediate financial or service impact requires urgent handling"
]
}
}
}'
noul retorna probabilidade de sim/não entre 0 e 1; choice retorna a opção e a distribuição de probabilidades; score retorna posição entre níveis, probabilidades e confiança. Probabilidade e confiança não garantem correção; defina limites com suas próprias amostras. Valide model, chaves e tipos das respostas e usage.input_tokens / usage.output_tokens antes de usar o resultado.
Compatibilidade com o SDK
Nas chamadas de texto com o SDK oficial do TypeSafe, defina compression: false explicitamente e não dependa da negociação padrão de compressão. Atualmente, imagens só são aceitas no formato JSON + Base64 mostrado neste guia; o upload multipart padrão de imagens do SDK não é compatível. Para imagens, use a requisição HTTP deste guia em vez dos objetos de imagem ou do fluxo padrão de upload do SDK.
Entrada de imagem PNG / JPEG
Toda requisição com imagem precisa de TypeSafe-Danger-Zone-Images: true. Este exemplo envia PNG em JSON Base64. photo-001 é uma referência local e deve aparecer em state, nas instruções ou nos critérios. Para JPEG, use jpg ou jpeg em format.
curl --request POST 'https://api.icodeeasy.cc/v1/systemone' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--header 'TypeSafe-Danger-Zone-Images: true' \
--data '{
"model": "jev-1.14.0",
"state": {"photo": "photo-001"},
"assets": {
"photo-001": {
"type": "image",
"format": "png",
"data_base64": "<BASE64_PNG_WITHOUT_DATA_PREFIX>"
}
},
"questions": {
"mug_visible": {
"type": "noul",
"instructions": "Is there a coffee mug in `photo`?"
}
}
}'
Não inclua prefixo data: nem quebras de linha no Base64. Use PNG/JPEG estático, com até 16 MiB por arquivo decodificado, largura e altura entre 280 e 1568 pixels e corpo completo de até 32 MiB. A imagem não é redimensionada automaticamente; qualquer asset inválido faz toda a requisição falhar. Tokens de imagem entram em usage.input_tokens.
Localização Box (somente Jev 1.14)
Box é experimental. A requisição precisa de TypeSafe-Danger-Zone-Images: true e da versão fixa pública jev-1.14.0. Box não usa criteria. Acrescente um noul para verificar se o alvo existe:
{
"model": "jev-1.14.0",
"state": {"photo": "photo-001"},
"assets": {
"photo-001": {
"type": "image",
"format": "jpeg",
"data_base64": "<BASE64_JPEG_WITHOUT_DATA_PREFIX>"
}
},
"questions": {
"mug_visible": {
"type": "noul",
"instructions": "Is there a coffee mug in `photo`?"
},
"mug": {
"type": "box",
"instructions": "the coffee mug in `photo`"
}
}
}
Envie esse JSON ao mesmo endpoint com os headers de autenticação, JSON e Images. As respostas Box trazem top, bottom, left e right como frações de 0 a 1 da altura e largura; multiplique pelas dimensões em pixels. Uma caixa pode aparecer mesmo sem o alvo, portanto combine com a resposta de presença e a confiança em vez de tratá-la como detecção exata.
Contexto longo de 262K
O Jev 1.14 aceita o nível de contexto longo. Os padrões são 64K por requisição e 32K por pergunta. Para usar 262K, inclua explicitamente:
TypeSafe-Danger-Zone-Long-Context: true
curl --request POST 'https://api.icodeeasy.cc/v1/systemone' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--header 'TypeSafe-Danger-Zone-Long-Context: true' \
--data '{
"model": "jev-1.14.0",
"state": "<LONG_DOCUMENT_OR_STRUCTURED_RECORD>",
"questions": {
"has_early_termination": {
"type": "noul",
"instructions": "Does the state include a clause allowing either party to terminate early?"
}
}
}'
Com o header, os limites por requisição e por pergunta usam 262K. Não há multiplicador de preço, mas a latência costuma ser maior. Avalie a qualidade com seus próprios textos longos e não ingleses; sucesso em texto curto não comprova o limite exato de 262K nem a preservação do início e do fim do documento.
Cobrança e limites experimentais
- O preço-base oficial é $0.042 / MTok de entrada. O preço efetivo atual no site é ¥0.30 / MTok de entrada, e a saída custa 0. Fórmula:
usage.input_tokens × ¥0.30 / 1,000,000. - Tokens de saída aparecem em
usage, mas são gratuitos atualmente. Não há preço separado de leitura/escrita de cache nem sobretaxa de contexto longo. Tokens de imagem são cobrados como entrada. - System One é uma API não streaming de decisões estruturadas, sem ferramentas do Chat e fora do Chat playground.
- Imagens e Box são experimentais; formatos, respostas e limites podem mudar entre versões. Box existe apenas no 1.14. Teste suas imagens, idiomas, limites e falhas antes da produção.
- Contexto longo não significa entrada ilimitada: continuam os limites de contexto, corpo, imagem e taxa. Mantenha validação de versão fixa, modelo da resposta, formato das respostas e
usage.
Consulte a página de preços e o catálogo de recursos para os dados atuais.
Guias relacionados
Catálogo de recursos dos modelos
Compare modelos públicos de texto, imagem e vídeo por ID normalizado, protocolos, clientes, ferramentas, recursos de mídia, limites e data de revisão.
Onde vejo preços em RMB, saldo e detalhes de uso?
Consulte preços RMB ao vivo, saldo, logs, uso de tokens, detalhes de cobrança e disponibilidade atual de pagamento nas superfícies públicas e do painel.
Como o conteúdo e os metadados das requisições de API são tratados?
Entenda como conteúdo e metadados de API apoiam roteamento, uso, segurança e suporte e acesse a política de privacidade completa.