Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Alleen van toepassing op:Foundry (klassiek) portal. Dit artikel is niet beschikbaar voor de nieuwe Foundry-portal.
Meer informatie over de nieuwe portal.
Opmerking
Koppelingen in dit artikel kunnen inhoud openen in de nieuwe Microsoft Foundry-documentatie in plaats van de Foundry-documentatie (klassiek) die u nu bekijkt.
Waarschuwing
Prompt flow in Microsoft Foundry en Azure Machine Learning wordt op 20 april 2027 uitgefaseerd. Prompt flow wordt niet langer aanbevolen voor nieuwe ontwikkelingsprojecten. Migreer bestaande promptstroomtoepassingen en -implementaties naar Microsoft Agent Framework vóór 20 april 2027.
Prompt flow-containerimages worden niet langer bijgewerkt, waaronder beveiligings- en pakketupdates. Dit geldt voor runtime-installatiekopieën van Prompt flow, waaronder promptflow-runtime, promptflow-runtime-stable en promptflow-python.
Na 20 april 2027 worden Prompt flow, met inbegrip van de webauthoring-ervaring in Microsoft Foundry en Azure Machine Learning, de extensies voor VS Code en de bijbehorende Prompt flow-containerinstallatiekopieën, niet langer ondersteund of zijn deze niet meer beschikbaar.
Als uw toepassing afhankelijk is van Prompt flow-implementaties of runtime-images, plan dan om deze workloads vóór de uitfaseringsdatum te verplaatsen naar ondersteunde alternatieven, zoals Microsoft Agent Framework. Voor richtlijnen voor migratie raadpleegt u de Prompt flow-migratiehandleiding en codervoorbeelden voor migratie.
Het prompt flow Python-hulpprogramma levert aangepaste codefragmenten als op zichzelf staande uitvoerbare knooppunten. U kunt snel Python hulpprogramma's maken, code bewerken en resultaten controleren.
Voorwaarden
Belangrijk
Dit artikel biedt verouderde ondersteuning voor hubprojecten. Het werkt niet voor Foundry-projecten. Zie Hoe weet ik welk type project ik heb?
SDK-compatibiliteitsnotitie: codevoorbeelden vereisen een specifieke Microsoft Foundry SDK-versie. Als u compatibiliteitsproblemen ondervindt, kunt u overwegen om te migreren van een hub naar een Foundry-project.
- Een Azure-account met een actief abonnement. Als u nog geen account hebt, maakt u een vrij Azure-account, inclusief een gratis proefabonnement.
- Als u nog geen project hebt, maakt u een hubproject.
Bouwen met het hulpprogramma Python
Een stroom maken of openen in Microsoft Foundry. Zie Een stroom maken voor meer informatie.
Selecteer + Python om het hulpprogramma Python toe te voegen aan uw stroom.
Voer waarden in voor de invoerparameters van het hulpprogramma Python die worden beschreven in de tabel Invoeren. Voer in het invoervak Code bijvoorbeeld de volgende Python code in:
from promptflow import tool @tool def my_python_tool(message: str) -> str: return 'hello ' + messageZie Python invoervereisten voor code voor meer informatie.
Voeg indien nodig meer tools toe aan uw workflow. Of selecteer Uitvoeren om de flow uit te voeren.
De uitvoer wordt beschreven in de tabel Uitvoer. Op basis van de invoer van de vorige voorbeeldcode in Python, als het invoerbericht "wereld" is, dan is de uitvoer
hello world.
Ingangen
Nadat u de code hebt opgeslagen, wordt de lijst met invoerwijzigingen gewijzigd op basis van de argumenten van de functie tool. Door het toevoegen van het type aan argumenten en return waarden kan het hulpprogramma de typen correct weergeven.
| Naam | Type | Beschrijving | Vereist |
|---|---|---|---|
| Code | string | Het Python-codefragment. | Ja |
| Ingangen | - | De lijst met de parameters van de hulpprogrammafunctie en de bijbehorende toewijzingen. | - |
Uitgangen
De uitvoer is de return-waarde van de Python-hulpprogrammafunctie. Denk bijvoorbeeld aan de volgende Python functie:
from promptflow import tool
@tool
def my_python_tool(message: str) -> str:
return 'hello ' + message
Als het invoerbericht 'wereld' is, is de uitvoer hello world.
Typen
| Type | Python voorbeeld | Beschrijving |
|---|---|---|
| Int | param: int | Type geheel getal |
| Bool | param: bool | Booleaanse waardetype |
| string | parameter: str | Tekenreekstype |
| Dubbele | parameter: zwevend | Dubbel type |
| Lijst | param: lijst of param: Lijst[T] | Lijsttype |
| Object | param: dict of param: Dict[K, V] | Objecttype |
| Verbinding | param: CustomConnection | Het verbindingstype krijgt speciale aandacht bij de verwerking. |
Behandel parameters met de Connection typeaantekening als verbindingsinvoer. Deze behandeling betekent:
- De promptstroomextensie toont een selector om de verbinding te selecteren.
- Tijdens de uitvoering probeert de prompt-flow de verbinding met dezelfde naam te vinden van de parameterwaarde die u doorgeeft.
Opmerking
De Union[...] typeannotatie ondersteunt alleen het verbindingstype. Een voorbeeld is param: Union[CustomConnection, OpenAIConnection].
invoervereisten voor Python code
In deze sectie worden de vereisten beschreven voor de Python code-invoer voor het hulpprogramma Python.
- Python hulpprogrammacode moet bestaan uit volledige Python code, met inbegrip van de benodigde moduleimport.
- Python hulpprogrammacode moet een functie bevatten die is ingericht met
@tool(toolfunctie), die fungeert als het ingangspunt voor uitvoering. Pas de@tooldecorator slechts eenmaal toe in het fragment. - Wijs Python-toolfunctieparameters toe in de sectie
Inputs. - Python toolfunctie moet een return statement en een waarde hebben, die de uitvoer van de functie is.
De volgende Python code is een voorbeeld van aanbevolen procedures:
from promptflow import tool
@tool
def my_python_tool(message: str) -> str:
return 'hello ' + message
Een aangepaste verbinding gebruiken in het hulpprogramma Python
Als u een hulpprogramma voor Python ontwikkelt waarvoor externe services moeten worden aangeroepen met verificatie, gebruikt u de aangepaste verbinding in een promptstroom. Met deze verbinding kunt u de toegangssleutel veilig opslaan en deze vervolgens ophalen in uw Python code.
Een aangepaste verbinding maken
Maak een aangepaste verbinding waarin al uw API-sleutel voor het grote taalmodel of andere vereiste referenties worden opgeslagen.
Belangrijk
Dit artikel biedt verouderde ondersteuning voor hubprojecten. Het werkt niet voor Foundry-projecten. Zie Hoe weet ik welk type project ik heb?
SDK-compatibiliteitsnotitie: codevoorbeelden vereisen een specifieke Microsoft Foundry SDK-versie. Als u compatibiliteitsproblemen ondervindt, kunt u overwegen om te migreren van een hub naar een Foundry-project.
- Een Azure-account met een actief abonnement. Als u nog geen account hebt, maakt u een vrij Azure-account, inclusief een gratis proefabonnement.
- Als u nog geen project hebt, maakt u een hubproject.
Ga naar de pagina Beheercentrum voor uw project.
Selecteer onder het kopje Hub of ProjectConnected resources.
Selecteer + Nieuwe verbinding.
Selecteer Aangepaste Service. U kunt uw verbindingsnaam definiëren. Selecteer Sleutel-waardeparen toevoegen om meerdere sleutel-waardeparen toe te voegen om uw referenties en sleutels op te slaan.
Opmerking
Zorg ervoor dat ten minste één sleutel-waardepaar is ingesteld als geheim. Anders wordt de verbinding niet gemaakt. Als u één sleutel-waardepaar wilt instellen als geheim, selecteert u geheim om uw sleutelwaarde te versleutelen en op te slaan.
Een aangepaste verbinding gebruiken in Python
Om een aangepaste verbinding in de Python-code te gebruiken:
- Importeer in de codesectie van uw Python-knooppunt de aangepaste verbindingsbibliotheek met behulp van
from promptflow.connections import CustomConnection. Definieer een invoerparameter van het typeCustomConnectionin de functie van het hulpprogramma. - Parseert de invoer in de invoersectie. Selecteer vervolgens uw aangepaste doelverbinding in de vervolgkeuzelijst met waarden.
Bijvoorbeeld:
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