Ferramenta Python para fluxos no portal clássico do Microsoft Foundry

Aplica-se somente a:Portal Foundry (clássico). Este artigo não está disponível para o novo portal do Foundry. Saiba mais sobre o novo portal.

Nota

Links neste artigo podem abrir conteúdo na nova documentação do Microsoft Foundry em vez da documentação da Foundry (clássica) que você está exibindo agora.

Aviso

O Prompt flow no Microsoft Foundry e no Azure Machine Learning será descontinuado em 20 de abril de 2027. O Prompt flow não é mais recomendado para novos desenvolvimentos. Migre aplicativos e implantações existentes do Prompt flow para o Microsoft Agent Framework antes de 20 de abril de 2027.

As imagens de contêiner do prompt flow não recebem mais atualizações, incluindo atualizações de segurança e de pacotes. Isso se aplica às imagens de runtime de prompt flow, incluindo promptflow-runtime, promptflow-runtime-stable e promptflow-python.

Após 20 de abril de 2027, o Prompt flow, incluindo a experiência de autoria na Web no Microsoft Foundry e no Azure Machine Learning, as extensões do VS Code e as imagens de contêiner relacionadas do Prompt flow, não terá mais suporte nem estará disponível.

Se o seu aplicativo depende de implantações do Prompt flow ou de imagens de runtime, planeje migrar essas cargas de trabalho para alternativas com suporte, como o Microsoft Agent Framework, antes da data de desativação. Para obter orientações sobre migração, consulte o guia de migração do Prompt flow e os exemplos de código de migração.

A ferramenta Prompt Flow do Python fornece trechos de código personalizados como nós executáveis ​​independentes. Você pode criar rapidamente Python ferramentas, editar código e verificar os resultados.

Pré-requisitos

Importante

Este artigo fornece suporte herdado para projetos baseados em hub. Ele não funcionará para projetos do Foundry. Veja como saber qual tipo de projeto tenho?

Observação de compatibilidade do SSDK: exemplos de código exigem uma versão específica do SDK do Microsoft Foundry. Se você encontrar problemas de compatibilidade, considere a migração de um projeto baseado em hub para um projeto do Foundry.

Compilar com a ferramenta Python

  1. Crie ou abra um fluxo em Microsoft Foundry. Para obter mais informações, consulte Criar um fluxo.

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

    Captura de tela que mostra a ferramenta Python adicionada a um fluxo no portal do Foundry.

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

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

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

  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 de código de entrada Python anterior, 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 que você salva o código. Adicionar tipo a argumentos e return valores ajuda a ferramenta a mostrar os tipos corretamente.

Nome Tipo Descrição Necessário
Code cadeia O trecho de código em Python. Sim
Entradas - A lista dos parâmetros da função da ferramenta e suas atribuições. -

Saídas

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

from promptflow import tool

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

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

Tipos

Tipo Exemplo de Python Descrição
Int param: int Tipo inteiro
bool param: bool Tipo booliano
cadeia param: str Tipo de cadeia de caracteres
double param: ponto flutuante Tipo duplo
Lista param: list ou param: List[T] Tipo de lista
objeto param: dict ou param: Dict[K, V] Tipo de objeto
Conexão param: CustomConnection O tipo de conexão é tratado especialmente.

Trate parâmetros que possuem a anotação de tipo Connection como entradas de conexão. Esse tratamento significa:

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

Nota

A Union[...] anotação de tipo dá suporte apenas ao tipo de conexão. Um exemplo é param: Union[CustomConnection, OpenAIConnection].

Requisitos de entrada para código Python

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

  • O código da ferramenta Python deve consistir em código Python completo, incluindo a importação dos módulos necessários.
  • O código da ferramenta Python deve conter uma função decorada com @tool (função de ferramenta), servindo como ponto de entrada para a execução. Aplique o decorador @tool apenas uma vez no snippet.
  • Atribua parâmetros de função de ferramenta Python na seção Inputs.
  • A função de ferramenta em Python deve conter uma instrução de retorno e um valor, que representam 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 em Python que exige chamar serviços externos com autenticação, utilize a conexão personalizada dentro de um fluxo de execução. Usando essa conexão, você pode armazenar com segurança a chave de acesso e recuperá-la em seu código Python.

Criar uma conexão personalizada

Crie uma conexão personalizada que armazene todas as suas chaves de API de modelo de idioma grande ou outras credenciais necessárias.

Importante

Este artigo fornece suporte herdado para projetos baseados em hub. Ele não funcionará para projetos do Foundry. Veja como saber qual tipo de projeto tenho?

Observação de compatibilidade do SSDK: exemplos de código exigem uma versão específica do SDK do Microsoft Foundry. Se você encontrar problemas de compatibilidade, considere a migração de um projeto baseado em hub para um projeto do Foundry.

  1. Vá para a página do Centro de Gerenciamento do seu projeto.

  2. No título Hub ou Project, selecione Conectados recursos.

  3. Selecione + Nova Conexão.

  4. Selecione o serviço Personalizado . Você pode definir o nome da conexão. Selecione Adicionar pares chave-valor para adicionar vários pares chave-valor para armazenar suas credenciais e chaves.

    Nota

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

Consumir conexão personalizada no Python

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

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

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óximas etapas