Consultar um agente implantado Mosaic AI
Saiba como usar o cliente de implantações MLflow ou o cliente OpenAI Databricks para enviar solicitações aos agentes implantados.
Para saber como implantar agentes, consulte Implantar um agente para aplicativos generativos AI.
Cliente de implantações do MLflow (recomendado)
A Databricks recomenda que o senhor use o cliente de implantação do MLflow para consultar seu endpoint. O cliente de implantação do MLflow oferece os seguintes benefícios:
- Permite que você forneça entradas personalizadas opcionais.
- Permite que o senhor solicite traços do MLflow.
- Os métodos
predict
epredict_stream
do cliente de implantações correspondem ao comportamento do agente criado.
O exemplo a seguir mostra como consultar um agente usando o cliente de implantação do MLflow. Substitua o conteúdo de messages
por uma consulta específica do seu agente e substitua <agent-endpoint-name
pelo nome do seu endpoint. Se o seu agente aceitar entradas personalizadas, inclua-as no dicionário Python de entrada. Consulte Entradas e saídas personalizadas.
from mlflow.deployments import get_deploy_client
client = get_deploy_client()
input_example = {
"messages": [{"role": "user", "content": "What does Databricks do?"}],
## Optional: Include any custom inputs
## "custom_inputs": {"id": 5},
"databricks_options": {"return_trace": True},
}
endpoint = "<agent-endpoint-name>"
Após a formatação da solicitação, execute client.predict()
para respostas sem transmissão ou client.predict_stream()
para respostas com transmissão. predict()
e predict_stream()
chamam as funções do agente que você definiu ao criar o agente. Consulte Agentes de saída de transmissão do autor.
## Call predict for non-streaming responses
response = client.predict(endpoint=endpoint, inputs=input_ex)
## Call predict_stream for streaming responses
streaming_response = client.predict_stream(endpoint=endpoint, inputs=input_ex)
Cliente OpenAI da Databricks
Como alternativa, o senhor pode usar o Databricks OpenAI Client para consultar um agente implantado. O Databricks OpenAI Client suporta apenas casos de uso de bate-papo de conversação. Isso significa que você só pode enviar e receber mensagens. O senhor não pode usar o Databricks OpenAI Client para incluir entradas personalizadas ou solicitar rastreamentos do endpoint.
O exemplo a seguir mostra como enviar uma consulta usando o Databricks OpenAI Client. Substitua o conteúdo de messages
por uma consulta específica do seu agente e substitua <agent-endpoint-name
pelo nome do seu endpoint.
from databricks.sdk import WorkspaceClient
messages = [{"role": "user", "content": "What does Databricks do?"}]
endpoint = "<agent-endpoint-name>"
w = WorkspaceClient()
client = w.serving_endpoints.get_open_ai_client()
Após a formatação da solicitação, execute chat.completions.create()
. Incluir o parâmetro stream=True
para respostas de transmissão. chat.completion.create()
invocará as funções predict()
ou predict_stream()
que você definiu ao criar o agente. Consulte Agentes de saída de transmissão do autor.
## Run for non-streaming responses
response = client.chat.completions.create(model=endpoint, messages=messages)
## Include stream=True for streaming responses
streaming_response = client.chat.completions.create(
model=endpoint, messages=msgs, stream=True
)