Pular para o conteúdo principal

Rastreando um aplicativo GenAI (IDE)

Este início rápido ajuda a integrar seu aplicativo GenAI ao MLflow Tracing se o senhor usar um IDE local como ambiente de desenvolvimento. Se o senhor usar um Databricks Notebook, use o início rápido do Databricks Notebook.

O que você alcançará

Ao final deste tutorial, o senhor terá:

  • Um experimento de MLflow para seu aplicativo GenAI
  • Seu ambiente de desenvolvimento local conectado ao MLflow
  • Um aplicativo GenAI simples instrumentado com o MLflow Tracing
  • Um rastreamento desse aplicativo em seu experimento MLflow

trace

Pré-requisitos

  • Databricks Workspace : Acesso a um site Databricks workspace.

Etapa 1: Instalar o MLflow

Ao trabalhar em seu IDE local, o senhor precisa instalar o MLflow com a conectividade Databricks.

pip install --upgrade "mlflow[databricks]>=3.1" openai

Etapa 2: Criar um novo experimento MLflow

Um experimento MLflow é o contêiner do seu aplicativo GenAI. Saiba mais sobre o experimento e o que ele contém na seção do modelo de dados.

  1. Abra o site Databricks workspace
  2. Vá para Experimentos na barra lateral esquerda em Aprendizado de Máquina
  3. Na parte superior da página de experimentos, clique em Novo experimento GenAI

Criação de experimentos

Etapa 3: Conecte seu ambiente ao MLflow

nota

Este início rápido descreve o uso de tokens de acesso pessoal Databricks. O MLflow também funciona com os outros métodos de autenticação compatíveis com o Databricks.

  1. Clique em Generate API key (Gerar chave )

  2. Copie e execute o código gerado em seu terminal.

    Bash
    export DATABRICKS_TOKEN=<databricks-personal-access-token>
    export DATABRICKS_HOST=https://<workspace-name>.cloud.databricks.com
    export MLFLOW_TRACKING_URI=databricks
    export MLFLOW_EXPERIMENT_ID=<experiment-id>

Etapa 4: criar e instrumentar seu aplicativo

dica

A Databricks forneceu acesso imediato a LLMs populares de fronteira e de código aberto. Para executar esse início rápido, o senhor pode:

  1. Usar os LLMs hospedados na Databricks
  2. Use diretamente seu próprio API key de um provedor LLM
  3. Crie um modelo externo para permitir o acesso controlado à LLM API chave do seu provedor

O exemplo de início rápido abaixo usa o SDK da OpenAI para se conectar a um LLM hospedado na Databricks. Se o senhor quiser usar seu próprio OpenAI key, atualize a linha client = OpenAI(...).

Se preferir usar um dos outros mais de 20 SDKs de LLM (Anthropic, Bedrock etc.) ou estruturas de criação de GenAI (LangGraph etc.) compatíveis com o MLflow, siga as instruções na interface do usuário do MLflow Experiment na etapa anterior.

  1. Crie um arquivo Python chamado app.py no diretório do seu projeto.

    Aqui, usamos o decorador@mlflow.trace que facilita o rastreamento de qualquer aplicativo Python combinado com a instrumentação automática da OpenAI para capturar os detalhes da chamada para o SDK da OpenAI.

    O trecho de código abaixo usa o Claude Sonnet LLM da Anthropic. O senhor pode selecionar outro LLM na lista de modelos básicos compatíveis.

    Python
    import mlflow
    from openai import OpenAI

    # Enable MLflow's autologging to instrument your application with Tracing
    mlflow.openai.autolog()

    # Connect to a Databricks LLM via OpenAI using the same credentials as MLflow
    # Alternatively, you can use your own OpenAI credentials here
    mlflow_creds = mlflow.utils.databricks_utils.get_databricks_host_creds()
    client = OpenAI(
    api_key=mlflow_creds.token,
    base_url=f"{mlflow_creds.host}/serving-endpoints"
    )

    # Use the trace decorator to capture the application's entry point
    @mlflow.trace
    def my_app(input: str):
    # This call is automatically instrumented by `mlflow.openai.autolog()`
    response = client.chat.completions.create(
    model="databricks-claude-sonnet-4", # This example uses a Databricks hosted LLM - you can replace this with any AI Gateway or Model Serving endpoint. If you provide your own OpenAI credentials, replace with a valid OpenAI model e.g., gpt-4o, etc.
    messages=[
    {
    "role": "system",
    "content": "You are a helpful assistant.",
    },
    {
    "role": "user",
    "content": input,
    },
    ],
    )
    return response.choices[0].message.content

    result = my_app(input="What is MLflow?")
    print(result)
  2. execução do aplicativo

    Bash
    python app.py

Etapa 5: visualizar o Trace em MLflow

  1. Navegue de volta para a UI do experimento MLflow
  2. Agora o senhor verá o rastreamento gerado em Traces tab
  3. Clique no rastreamento para acessar view seus detalhes

Detalhes do rastreamento

Entendendo o traço

O rastreamento que você acabou de criar mostra:

  • Extensão raiz : representa as entradas para a função my_app(...)

    • Child Span : representa a solicitação de conclusão do OpenAI
  • Atributos : Contém metadados como nome do modelo, contagem de tokens e informações de tempo

  • Entradas : as mensagens enviadas para o modelo

  • Saídas : A resposta recebida do modelo

Esse simples rastreamento já fornece percepções valiosas sobre o comportamento do seu aplicativo, como, por exemplo, o que o senhor está fazendo?

  • O que foi perguntado
  • Qual resposta foi gerada
  • Quanto tempo demorou a solicitação
  • Quantos tokens foram usados (afetando o custo)
dica

Para aplicativos mais complexos, como sistemas RAG ou agentes de várias etapas, o MLflow Tracing oferece ainda mais valor ao revelar o funcionamento interno de cada componente e etapa.

Próximas etapas

Continue sua jornada com estas ações recomendadas e o tutorial.

Guia de referência

Explore a documentação detalhada dos conceitos e recursos mencionados neste guia.