Share via


Ferramenta Python para fluxos no Azure AI Studio

Importante

Alguns dos recursos descritos neste artigo podem estar disponíveis apenas na visualização. Essa visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.

A ferramenta Python de fluxo de prompt oferece trechos de código personalizados como nós executáveis autônomos. Você pode criar rapidamente ferramentas Python, editar código e verificar resultados.

Crie com a ferramenta Python

  1. Crie ou abra um fluxo no Azure AI Studio. Para obter mais informações, consulte Criar um fluxo.

  2. Selecione + Python para adicionar a ferramenta Python ao seu fluxo.

    Captura de tela que mostra a ferramenta Python adicionada a um fluxo no Azure AI Studio.

  3. Insira valores para os parâmetros de entrada da ferramenta Python descritos na tabela Inputs. Por exemplo, na caixa de texto Entrada de código , você pode inserir o seguinte código Python:

    from promptflow import tool
    
    @tool
    def my_python_tool(message: str) -> str:
        return 'hello ' + message
    

    Para obter mais informações, consulte Requisitos de entrada de código Python.

  4. Adicione mais ferramentas ao seu fluxo, conforme necessário. Ou selecione Executar para executar o fluxo.

  5. As saídas são descritas na tabela Saídas. Com base no exemplo anterior de entrada de código Python, se a mensagem de entrada for "world", a saída será hello world.

Entradas

A lista de entradas muda com base nos argumentos da função de ferramenta, depois de salvar o código. Adicionar tipo a argumentos e return valores ajuda a ferramenta a mostrar os tipos corretamente.

Nome Tipo Descrição Obrigatório
Código string O trecho de código do Python. Sim
Entradas - A lista dos parâmetros da função da ferramenta e suas atribuições. -

Saídas

A saída é o return valor da função da ferramenta Python. Por exemplo, considere a seguinte função de ferramenta Python:

from promptflow import tool

@tool
def my_python_tool(message: str) -> str:
    return 'hello ' + message

Se a mensagem de entrada for "world", a saída será hello world.

Tipos

Type Exemplo de Python Description
número inteiro Param: Int Tipo de inteiro
booleano Param: Bool Tipo booleano
string Param: STR Tipo de cadeia
duplo Param: Flutuador Tipo duplo
list param: list ou param: List[T] Tipo de lista
objeto param: dict ou param: Dict[K, V] Object type
Connection param: CustomConnection O tipo de conexão é tratado de forma especial.

Os parâmetros com Connection anotação de tipo são tratados como entradas de conexão, o que significa:

  • A extensão de fluxo de prompt mostra um seletor para selecionar a conexão.
  • Durante o tempo de execução, o fluxo de prompt tenta encontrar a conexão com o mesmo nome a partir do valor do parâmetro que foi passado.

Nota

A Union[...] anotação de tipo só é suportada para o tipo de conexão. Um exemplo é param: Union[CustomConnection, OpenAIConnection].

Requisitos de entrada de código Python

Esta seção descreve os requisitos da entrada de código Python para a ferramenta Python.

  • O código da ferramenta Python deve consistir em um código Python completo, incluindo quaisquer importações de módulos necessárias.
  • O código da ferramenta Python deve conter uma função decorada com @tool (função ferramenta), servindo como ponto de entrada para a execução. O @tool decorador deve ser aplicado apenas uma vez dentro do trecho.
  • Os parâmetros da função da ferramenta Python devem ser atribuídos na Inputs seção.
  • A função da ferramenta Python deve ter uma instrução de retorno e um valor, que é a saída da ferramenta.

O código Python a seguir é um exemplo de práticas recomendadas:

from promptflow import tool

@tool
def my_python_tool(message: str) -> str:
    return 'hello ' + message

Consumir uma conexão personalizada na ferramenta Python

Se você estiver desenvolvendo uma ferramenta Python que exija a chamada de serviços externos com autenticação, poderá usar a conexão personalizada em um fluxo de prompt. Ele permite que você armazene com segurança a chave de acesso e, em seguida, recupere-a em seu código Python.

Criar uma conexão personalizada

Crie uma conexão personalizada que armazene todo o seu modelo de idioma grande, chave de API ou outras credenciais necessárias.

  1. Vá para a página Configurações do seu projeto. Em seguida, selecione + Nova conexão.

  2. Selecione Serviço personalizado . Você pode definir seu nome de conexão. Você pode adicionar vários pares chave-valor para armazenar suas credenciais e chaves selecionando Adicionar pares chave-valor.

    Nota

    Certifique-se de que pelo menos um par chave-valor está definido como secreto. Caso contrário, a conexão não será criada com êxito. Para definir um par chave-valor como secreto, selecione é segredo para criptografar e armazenar o valor da chave.

  3. Adicione as seguintes chaves personalizadas à conexão:

    • azureml.flow.connection_type: Custom
    • azureml.flow.module: promptflow.connections

    Captura de tela que mostra a adição de informações extras a uma conexão personalizada no AI Studio.

Consumir uma conexão personalizada em Python

Para consumir uma conexão personalizada em seu código Python:

  1. Na seção de código no nó Python, importe a biblioteca from promptflow.connections import CustomConnectionde conexões personalizada. Defina um parâmetro de entrada do tipo CustomConnection na função da ferramenta.
  2. Analise a entrada para a seção de entrada. Em seguida, selecione sua conexão personalizada de destino na lista suspensa de valores.

Por exemplo:

from promptflow import tool
from promptflow.connections import CustomConnection

@tool
def my_python_tool(message: str, myconn: CustomConnection) -> str:
    # Get authentication key-values from the custom connection
    connection_key1_value = myconn.key1
    connection_key2_value = myconn.key2

Próximos passos