Visão geral
A Batch API da Maritaca oferece operações para:
- Arquivos – armazenar ou recuperar arquivos usados em requisições.
- Batch inference – executar jobs assíncronos em lote.
Arquivos /api/files
Método & Endpoint | Descrição |
---|---|
GET /api/files | Listar todos os arquivos. |
POST /api/files | Fazer upload de um novo arquivo. |
GET /api/files/{file_id} | Detalhes de um arquivo. |
GET /api/files/{file_id}/content | Fazer download do conteúdo. |
DELETE /api/files/{file_id} | Excluir um arquivo. |
Base URL:
https://chat.maritaca.ai
Listar arquivos
Lista arquivos submetidos.
GET /api/files
Parâmetros de Consulta
limit integer
Opcional
Máximo de itens por página.
after string
Opcional
Cursor para a próxima página (valor de next_cursor
da resposta anterior).
purpose string
Opcional
Filtra os arquivos por finalidade (batch_input
).
order string
Opcional
Ordem dos arquivos.
- Default
- Direct API Call
import openai
client = openai.OpenAI(
api_key="", #Sua API_KEY
base_url="https://chat.maritaca.ai/api",
)
files = client.files.list()
print(files)
import requests
url = "https://chat.maritaca.ai/api/files"
headers = {"Authorization": f"Key {api_key}"}
response = requests.get(url, headers=headers)
print(response.json())
Upload de arquivo
Submete o arquivo que contém as requisições.
POST /api/files
Corpo da Requisição
file file
Obrigatório
O próprio arquivo a ser enviado. Aceita qualquer tipo binário
(.jsonl
, .csv
, .txt
, etc.).
purpose string
Obrigatório
Define o uso pretendido do arquivo, por exemplo
atualmente apenas batch_input
é aceito
- Default
- Direct API Call
from openai import OpenAI
client = openai.OpenAI(
api_key="", #Sua API_KEY
base_url="https://chat.maritaca.ai/api",
)
batch_input_file = client.files.create(
file=open("batch_input.jsonl", "rb"),
purpose="batch"
)
print(batch_input_file)
import requests
url = "https://chat.maritaca.ai/api/files"
headers = {"Authorization": f"Key {api_key}"}
files = {"file": ("batch_input.jsonl", open("batch_input.jsonl", "rb"))}
resp = requests.post(url, headers=headers, files=files)
print(resp.json())
Recuperar detalhes de um arquivo
Retorna metadata de um arquivo.
GET /api/files/{file_id}
Parâmetros de Caminho
file_id string
Obrigatório
ID do arquivo retornado no upload ou na listagem.
Utilizado para recuperar os metadados completos do arquivo.
- Default
- Direct API Call
metadata = client.files.retrieve("file-1")
print(metadata)
import requests
file_id = "file-1"
url = f"https://chat.maritaca.ai/api/files/{file_id}"
headers = {"Authorization": f"Key {api_key}"}
resp = requests.get(url, headers=headers)
print(resp.json())
Baixar conteúdo de um arquivo
Retornar o conteúdo de um arquivo.
GET /api/files/{file_id}/content
Parâmetros de Caminho
file_id string
Obrigatório
ID do arquivo, obtido durante o upload ou na listagem.
- Default
- Direct API Call
import openai
client = openai.OpenAI(
api_key="", #Sua API_KEY
base_url="https://chat.maritaca.ai/api",
)
metadata = client.files.retrieve("batch_input.jsonl")
print(metadata)
import requests
file_id = "batch_input.jsonl"
url = f"https://chat.maritaca.ai/api/files/{file_id}"
headers = {"Authorization": f"Key {api_key}"}
resp = requests.get(url, headers=headers)
print(resp.json())
Excluir um arquivo
Excluir um arquivo.
DELETE /api/files/{file_id}
Parâmetros de Caminho
file_id string
Obrigatório
ID do arquivo, obtido durante o upload ou na listagem.
- Default
- Chamada direta para a API
client.files.delete("batch_input.jsonl")
import requests
file_id = "batch_input.jsonl"
url = f"https://chat.maritaca.ai/api/files/{file_id}"
headers = {"Authorization": f"Key {api_key}"}
resp = requests.delete(url, headers=headers)
print(resp.status_code)
Batch Inference /api/batches
Método & Endpoint | Descrição |
---|---|
GET /api/batches | Listar todos os batches. |
POST /api/batches | Criar um novo batch de inferência. |
GET /api/batches/{batch_id} | Detalhes de um batch. |
POST /api/batches/{batch_id}/cancel | Cancelar um batch em execução. |
Criar batch
Cria um lote a partir de um arquivo que já foi carregado seguindo as recomendações listadas das operações com arquivos.
POST /api/batches
Corpo da Requisição
input_file_id string
Obrigatório
ID do arquivo .jsonl
contendo as linhas de entrada para o lote.
endpoint string
Obrigatório
Rota de destino que receberá cada requisição, por exemplo /chat/completions
.
completion_window string
Opcional
Prazo máximo de execução (ex.: 24h
, 1h
).
Usado para abortar o job automaticamente após esse período.
metadata object
Opcional
Qualquer par chave-valor (ex.: {"project":"demo"}
).
- Default
- Chamada direta para a API
batch = client.beta.batches.create(
input_file_id="file-1",
endpoint="/v1/chat/completions",
completion_window="24h",
metadata={
"description": "job for marketing data",
"owner": "marketing team"
}
)
print(batch.id)
import requests, json
url = "https://chat.maritaca.ai/api/batches"
headers = {
"Authorization": f"Key {api_key}",
"Content-Type": "application/json"
}
payload = {
"input_file_id": "file-1",
"endpoint": "/v1/chat/completions",
"completion_window": "24h",
"metadata": {
"description": "job for marketing data",
"owner": "marketing team"
}
}
resp = requests.post(url, headers=headers, json=payload)
print(resp.json())
Listar batches
Liste seus lotes.
GET /api/batches
Corpo da Requisição
limit integer
Opcional
Máximo de itens por página.
after string
Opcional
Cursor para a próxima página (valor de next_cursor
da resposta anterior).
- Default
- Chamada direta para a API
batches = client.beta.batches.list(limit=10)
for batch in batches.data:
print(batch.id, batch.status)
import requests, json
url = "https://chat.maritaca.ai/api/batches"
params = {"limit": 10}
headers = {"Authorization": f"Key {api_key}"}
resp = requests.get(url, headers=headers, params=params)
print(resp.json())
Recuperar um batch
Obtém todos os detalhes de um job em lote.
GET /api/batches/{batch_id}
- Default
- Chamada direta para a API
batch = client.batches.retrieve("batch-1")
print(batch)
import requests
batch_id = "batch1"
url = f"https://chat.maritaca.ai/api/batches/{batch_id}"
headers = {"Authorization": f"Key {api_key}"}
resp = requests.get(url, headers=headers)
print(resp.json())
Cancelar um batch
Interrompe o processamento de um job em lote.
POST /api/batches/{batch_id}/cancel
Exemplo de Request
- Default
- Chamada direta para a API
import openai
cancelled = client.beta.batches.cancel("batch-1")
print(cancelled.status)
import requests
batch_id = "batch-1"
url = f"https://chat.maritaca.ai/api/batches/{batch_id}/cancel"
headers = {"Authorization": f"Key {api_key}"}
resp = requests.post(url, headers=headers)
print(resp.json())