Partilhar via


Ferramenta Python para fluxos no portal Azure AI Foundry

Importante

Os itens marcados (visualização) neste artigo estão atualmente em visualização pública. 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 Foundry. 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 portal do Azure AI Foundry.

  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. Acesse a página do Centro de gerenciamento do seu projeto.

  2. Sob o título Hub ou Projeto, selecione Recursos conectados.

  3. Selecione + Nova Ligação.

  4. 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.

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