Αυτό το μάθημα θα καλύψει το πώς να εκτελέσετε τα δείγματα κώδικα αυτού του μαθήματος.
Πριν ξεκινήσετε να κλωνοποιείτε το αποθετήριο σας, ενταχθείτε στο AI Agents For Beginners Discord κανάλι για να λάβετε οποιαδήποτε βοήθεια με τη ρύθμιση, ερωτήσεις σχετικά με το μάθημα ή για να συνδεθείτε με άλλους μαθητευόμενους.
Για να ξεκινήσετε, παρακαλώ κλωνοποιήστε ή φορκάρετε το GitHub Αποθετήριο. Αυτό θα δημιουργήσει τη δική σας έκδοση του υλικού του μαθήματος ώστε να μπορείτε να εκτελέσετε, να δοκιμάσετε και να τροποποιήσετε τον κώδικα!
Αυτό μπορεί να γίνει κάνοντας κλικ στον σύνδεσμο για φορκάρισμα του αποθετηρίου
Πλέον θα πρέπει να έχετε τη δική σας φορκάρισμένη έκδοση αυτού του μαθήματος στον ακόλουθο σύνδεσμο:

Ολόκληρο το αποθετήριο μπορεί να είναι μεγάλο (~3 GB) όταν κατεβάζετε όλη την ιστορία και όλα τα αρχεία. Αν παρακολουθείτε μόνο το εργαστήριο ή χρειάζεστε μόνο μερικούς φακέλους μαθημάτων, ένα επιφανειακό κλωνάρισμα (ή ένα αραιό κλωνάρισμα) κατεβάζει πολύ λιγότερα.
Αντικαταστήστε το <your-username> στις παρακάτω εντολές με το URL του φορκ σας (ή το upstream URL αν προτιμάτε).
Για να κλωνοποιήσετε μόνο το πιο πρόσφατο ιστορικό κωδικών (μικρό λήψη):
git clone --depth 1 https://github.com/<your-username>/ai-agents-for-beginners.git
Για να κλωνοποιήσετε ένα συγκεκριμένο branch:
git clone --depth 1 --branch <branch-name> https://github.com/<your-username>/ai-agents-for-beginners.git
Αυτό χρησιμοποιεί μερικό κλωνάρισμα και sparse-checkout (απαιτεί Git 2.25+ και συνιστάται σύγχρονο Git με υποστήριξη μερικού κλωναρίσματος):
git clone --depth 1 --filter=blob:none --sparse https://github.com/<your-username>/ai-agents-for-beginners.git
Πλοηγηθείτε στον φάκελο του αποθετηρίου:
cd ai-agents-for-beginners
Έπειτα ορίστε ποιοι φάκελοι θέλετε (το παράδειγμα παρακάτω δείχνει δύο φακέλους):
git sparse-checkout set 00-course-setup 01-intro-to-ai-agents
Μετά το κλωνάρισμα και την επαλήθευση των αρχείων, αν χρειάζεστε μόνο αρχεία και θέλετε να ελευθερώσετε χώρο (χωρίς ιστορικό git), διαγράψτε τα μεταδεδομένα του αποθετηρίου (💀μη αναστρέψιμο — θα χάσετε όλη τη λειτουργικότητα του Git):
# zsh/bash
rm -rf .git
# PowerShell
Remove-Item -Recurse -Force .git
Δημιουργήστε ένα νέο Codespace για αυτό το αποθετήριο μέσω του GitHub UI.
Αυτό το μάθημα προσφέρει μια σειρά από Jupyter Notebooks που μπορείτε να εκτελέσετε για να αποκτήσετε πρακτική εμπειρία στην κατασκευή AI Agents.
Τα δείγματα κώδικα χρησιμοποιούν το Microsoft Agent Framework (MAF) με τον FoundryChatClient, που συνδέεται με την Microsoft Foundry Agent Service V2 (το Responses API) μέσα από τη Microsoft Foundry.
Όλα τα Python notebooks είναι επισημασμένα με *-python-agent-framework.ipynb.
ΣΗΜΕΙΩΣΗ: Αν δεν έχετε εγκαταστήσει το Python3.12, βεβαιωθείτε ότι το εγκαθιστάτε. Έπειτα δημιουργήστε το venv σας χρησιμοποιώντας python3.12 για να εξασφαλίσετε ότι οι σωστές εκδόσεις εγκαθίστανται από το αρχείο requirements.txt.
Παράδειγμα
Δημιουργία φακέλου Python venv:
python -m venv venv
Έπειτα ενεργοποιήστε το περιβάλλον venv για:
# zsh/bash
source venv/bin/activate
# Command Prompt for Windows
venv\Scripts\activate
.NET 10+: Για τα δείγματα κώδικα που χρησιμοποιούν .NET, βεβαιωθείτε ότι εγκαθιστάτε το .NET 10 SDK ή νεότερο. Έπειτα ελέγξτε την έκδοση του εγκατεστημένου σας .NET SDK:
dotnet --list-sdks
gpt-5-mini). Δείτε το Βήμα 1 παρακάτω.Περιλαμβάνουμε ένα αρχείο requirements.txt στον ριζικό φάκελο αυτού του αποθετηρίου που περιέχει όλα τα απαιτούμενα πακέτα Python για την εκτέλεση των δειγμάτων κώδικα.
Μπορείτε να τα εγκαταστήσετε τρέχοντας την ακόλουθη εντολή στο τερματικό σας στον ριζικό φάκελο του αποθετηρίου:
pip install -r requirements.txt
Συνιστούμε να δημιουργήσετε ένα εικονικό περιβάλλον Python για να αποφύγετε τυχόν συγκρούσεις και προβλήματα.
Βεβαιωθείτε ότι χρησιμοποιείτε τη σωστή έκδοση Python στο VSCode.
Χρειάζεστε ένα hub και έργο στο Microsoft Foundry με ένα αναπτυγμένο μοντέλο για να τρέξετε τα notebooks.
gpt-5-mini) από Models + Endpoints → Deploy model.Από το έργο σας στην πύλη Microsoft Foundry:

gpt-5-mini).az loginΤα περισσότερα notebooks αυθεντικοποιούνται μέσω της Azure CLI σύνδεσης σας — χρησιμοποιώντας AzureCliCredential ή DefaultAzureCredential (και τα δύο αντλούν τη συνεδρία az login) από το πακέτο azure-identity — οπότε δεν απαιτούνται API κλειδιά. Μερικά μαθήματα και προαιρετικές ενσωματώσεις χρησιμοποιούν API κλειδιά· ελέγξτε τις προϋποθέσεις κάθε μαθήματος για πρόσθετες μεταβλητές περιβάλλοντος. Αυτό απαιτεί να είστε συνδεδεμένοι μέσω της Azure CLI.
Εγκαταστήστε το Azure CLI αν δεν το έχετε ήδη: aka.ms/installazurecli
Συνδεθείτε εκτελώντας:
az login
Ή αν βρίσκεστε σε απομακρυσμένο περιβάλλον/Codespace χωρίς πρόγραμμα περιήγησης:
az login --use-device-code
Επιλέξτε τη συνδρομή σας αν ζητηθεί — επιλέξτε αυτή που περιέχει το έργο Foundry σας.
Επαληθεύστε ότι είστε συνδεδεμένοι:
az account show
Γιατί
az login; Τα notebooks αυθεντικοποιούνται χρησιμοποιώνταςAzureCliCredential(ήDefaultAzureCredential, που επίσης αντλεί τη σύνδεση Azure CLI) από το πακέτοazure-identity. Αυτό σημαίνει ότι η συνεδρία Azure CLI παρέχει τα διαπιστευτήρια — δεν χρειάζονται API κλειδιά ή μυστικά στο αρχείο.env. Αυτή είναι μία καλύτερη πρακτική ασφαλείας.
.env σαςΑντιγράψτε το αρχείο παραδείγματος:
# zsh/bash
cp .env.example .env
# PowerShell
Copy-Item .env.example .env
Ανοίξτε το .env και συμπληρώστε αυτές τις δύο τιμές:
AZURE_AI_PROJECT_ENDPOINT=https://<your-project>.services.ai.azure.com/api/projects/<your-project-id>
AZURE_AI_MODEL_DEPLOYMENT_NAME=gpt-5-mini
| Μεταβλητή | Πού να την βρείτε |
|---|---|
AZURE_AI_PROJECT_ENDPOINT |
Πύλη Foundry → το έργο σας → σελίδα Overview |
AZURE_AI_MODEL_DEPLOYMENT_NAME |
Πύλη Foundry → Models + Endpoints → όνομα του αναπτυγμένου μοντέλου |
Αυτό είναι για τα περισσότερα μαθήματα! Τα notebooks θα αυθεντικοποιηθούν αυτόματα μέσω της συνεδρίας az login.
pip install -r requirements.txt
Συνιστούμε να τρέξετε αυτό μέσα στο εικονικό περιβάλλον που δημιουργήσατε νωρίτερα.
Τα notebooks του Μαθήματος 5 (Agentic RAG) και Μαθήματος 16 τρέχουν απ’ ευθείας με μία εσωτερική βάση γνώσης στη μνήμη — δεν απαιτούνται επιπλέον πόροι Azure. Αν θέλετε να τα υποστηρίξετε με έναν πραγματικό δείκτη Azure AI Search, σημειώστε ότι το notebook του Μαθήματος 16 χρησιμοποιεί προς το παρόν αυθεντικοποίηση με κλειδί: αλλάζει από την αναζήτηση στη μνήμη στην Azure AI Search μόνο όταν και οι δύο AZURE_SEARCH_SERVICE_ENDPOINT και AZURE_SEARCH_API_KEY είναι ορισμένες, αλλιώς παραμένει στην αναζήτηση στη μνήμη — οπότε για να το τρέξετε με πραγματικό δείκτη πρέπει να ορίσετε και το κλειδί διαχειριστή. Η αυθεντικοποίηση χωρίς κλειδιά με το Microsoft Entra ID (RBAC) είναι η συνιστώμενη προσέγγιση για τον δικό σας κώδικα παραγωγής, σύμφωνη με τη ροή az login που χρησιμοποιείται σε όλο το μάθημα.
Τα βήματα RBAC παρακάτω ισχύουν για τα δείγματα οδηγού ρύθμισης και τον δικό σας κώδικα. Δεν ενεργοποιούν αυθεντικοποίηση χωρίς κλειδιά στο notebook του Μαθήματος 16· αυτό εξακολουθεί να απαιτεί τόσο το endpoint όσο και το κλειδί διαχειριστή για χρήση Azure AI Search.
Ενεργοποιήστε πρόσβαση βάσει ρόλων στην υπηρεσία αναζήτησης σας:
az search service update --name <service-name> --resource-group <resource-group> --auth-options aadOrApiKey
Αναθέστε στον εαυτό σας τους απαιτούμενους ρόλους (δημιουργία/φόρτωση δεικτών και ερώτημα):
az role assignment create --assignee <your-user-or-principal-id> --role "Search Service Contributor" --scope $(az search service show -g <resource-group> -n <service-name> --query id -o tsv)
az role assignment create --assignee <your-user-or-principal-id> --role "Search Index Data Contributor" --scope $(az search service show -g <resource-group> -n <service-name> --query id -o tsv)
Προσθέστε το endpoint στο αρχείο .env σας:
| Μεταβλητή | Πού να την βρείτε |
|---|---|
AZURE_SEARCH_SERVICE_ENDPOINT |
Πύλη Azure → ο πόρος σας Azure AI Search → Overview → URL |
AZURE_SEARCH_API_KEY |
Απαραίτητο (μαζί με το endpoint) για ενεργοποίηση Azure AI Search στο notebook του Μαθήματος 16, που χρησιμοποιεί αυθεντικοποίηση με κλειδί. Πύλη Azure → Settings → Keys → πρωτεύον κλειδί διαχειριστή |
Γιατί χωρίς κλειδιά; Τα κλειδιά διαχειριστή παρέχουν πλήρη πρόσβαση εγγραφής στην υπηρεσία αναζήτησης και μπορούν να διαρρεύσουν μέσω αρχείων
.env. Με RBAC, χρησιμοποιείται η ταυτότητα σύνδεσηςaz login— το ίδιο πρότυπο χωρίς κλειδιά Entra ID που χρησιμοποιούν τα notebooks του μαθήματος (μέσωAzureCliCredential/DefaultAzureCredential). Δείτε Σύνδεση στο Azure AI Search χρησιμοποιώντας ρόλους.
Δείτε τον οδηγό ρύθμισης Azure AI Search για πλήρη δείγματα δημιουργίας δεικτών σε Python και .NET.
Μερικά notebooks στα μαθήματα 6 και 8 καλούν το Azure OpenAI απευθείας (χρησιμοποιώντας το Responses API) αντί να περάσουν μέσω έργου Microsoft Foundry. Αυτά τα δείγματα χρησιμοποιούσαν προηγουμένως GitHub Models, που καταργήθηκε και δεν υποστηρίζει το Responses API. Προσθέστε αυτές τις μεταβλητές στο αρχείο .env σας:
| Μεταβλητή | Πού να την βρείτε |
|---|---|
AZURE_OPENAI_ENDPOINT |
Πύλη Azure → πόρος σας Azure OpenAI → Keys and Endpoint → Endpoint (π.χ. https://<your-resource>.openai.azure.com) |
AZURE_OPENAI_DEPLOYMENT |
Το όνομα του αναπτυγμένου μοντέλου σας (π.χ. gpt-5-mini) που υποστηρίζει το Responses API |
AZURE_OPENAI_API_KEY |
Προαιρετικό — μόνο αν χρησιμοποιείτε αυθεντικοποίηση με κλειδί αντί για az login / Entra ID |
Το Responses API χρησιμοποιεί το σταθερό endpoint
/openai/v1/, οπότε δεν απαιτείταιapi-version. Κάντε σύνδεση μεaz loginγια να χρησιμοποιήσετε αυθεντικοποίηση χωρίς κλειδιά Entra ID.
MiniMax παρέχει μοντέλα με μεγάλο πλαίσιο συμφραζομένων (έως 204K tokens) μέσω συμβατού με OpenAI API. Επειδή το Microsoft Agent Framework’s OpenAIChatClient λειτουργεί με οποιοδήποτε συμβατό με OpenAI endpoint, μπορείτε να χρησιμοποιήσετε το MiniMax ως λύση αντικατάστασης για μαθήματα που χρησιμοποιούν OpenAIChatClient.
Προσθέστε αυτές τις μεταβλητές στο αρχείο .env σας:
| Μεταβλητή | Πού να την βρείτε |
|---|---|
MINIMAX_API_KEY |
MiniMax Platform → API Keys |
MINIMAX_BASE_URL |
Χρησιμοποιήστε https://api.minimax.io/v1 (προεπιλεγμένη τιμή) |
MINIMAX_MODEL_ID |
Το όνομα του μοντέλου για χρήση (π.χ., MiniMax-M3) |
Παραδείγματα μοντέλων: MiniMax-M3 (συνιστώμενο), MiniMax-M2.7, MiniMax-M2.7-highspeed (ταχύτερες απαντήσεις). Τα ονόματα μοντέλων και η διαθεσιμότητα μπορεί να αλλάζουν με την πάροδο του χρόνου, και η πρόσβαση σε κάθε μοντέλο μπορεί να εξαρτάται από τον λογαριασμό σας.
Τα δείγματα κώδικα που χρησιμοποιούν OpenAIChatClient (π.χ., λειτουργία κράτησης ξενοδοχείου του Μαθήματος 14) θα εντοπίσουν και θα χρησιμοποιήσουν αυτόματα τη διαμόρφωση MiniMax σας όταν το MINIMAX_API_KEY είναι ορισμένο.
Novita AI παρέχει ένα API συμβατό με OpenAI για ανοιχτού κώδικα και frontier LLMs (DeepSeek, Llama, Qwen, και άλλα). Εφόσον το OpenAIChatClient του Microsoft Agent Framework λειτουργεί με οποιοδήποτε endpoint συμβατό με OpenAI, μπορείτε να χρησιμοποιήσετε το Novita AI ως εναλλακτική λύση αντικατάστασης για το Azure OpenAI ή OpenAI.
Προσθέστε αυτές τις μεταβλητές στο αρχείο .env σας:
| Μεταβλητή | Πού να τη βρείτε |
|---|---|
NOVITA_API_KEY |
Novita AI Dashboard → API Keys |
NOVITA_BASE_URL |
Χρησιμοποιήστε https://api.novita.ai/openai/v1 (προεπιλεγμένη τιμή) |
NOVITA_MODEL_ID |
Όνομα μοντέλου προς χρήση (π.χ., moonshotai/kimi-k3) |
Παραδείγματα μοντέλων: moonshotai/kimi-k3, zai-org/glm-5.2, deepseek/deepseek-v4-flash-0731. Το Novita AI φιλοξενεί επίσης πολλές άλλες οικογένειες ανοιχτού κώδικα μοντέλων (Llama, Qwen, GLM, και άλλα) — ελέγξτε τη βιβλιοθήκη μοντέλων Novita AI για την τρέχουσα λίστα διαθέσιμων μοντέλων και τα IDs τους.
Τα τρέχοντα δείγματα δεν καταναλώνουν αυτόματα τις μεταβλητές NOVITA_*. Για να χρησιμοποιήσετε το Novita AI, περάστε αυτές τις τιμές ρητά κατά την κατασκευή του OpenAIChatClient στο δείγμα που τρέχετε.
Foundry Local είναι ένα ελαφρύ runtime που κατεβάζει, διαχειρίζεται και εξυπηρετεί γλωσσικά μοντέλα εντελώς στο δικό σας μηχάνημα μέσω ενός API συμβατού με OpenAI — χωρίς σύννεφο.
Εφόσον το OpenAIChatClient του Microsoft Agent Framework λειτουργεί με οποιοδήποτε endpoint συμβατό με OpenAI, το Foundry Local είναι μια τοπική εναλλακτική λύση αντικατάστασης για το Azure OpenAI.
1. Εγκαταστήστε το Foundry Local
# Windows
winget install Microsoft.FoundryLocal
# macOS
brew install foundrylocal
2. Κατεβάστε και τρέξτε ένα μοντέλο (αυτό ξεκινάει επίσης την τοπική υπηρεσία):
foundry model list # δείτε διαθέσιμα μοντέλα
foundry model run phi-4-mini
3. Εγκαταστήστε το Python SDK που χρησιμοποιείται για την ανακάλυψη τοπικού endpoint:
pip install foundry-local-sdk
4. Κατευθύνετε το Microsoft Agent Framework στο τοπικό σας μοντέλο:
from foundry_local import FoundryLocalManager
from agent_framework.openai import OpenAIChatClient
# Κατεβάζει (αν χρειάζεται) και εξυπηρετεί το μοντέλο τοπικά, στη συνέχεια εντοπίζει το endpoint/port.
manager = FoundryLocalManager("phi-4-mini")
chat_client = OpenAIChatClient(
base_url=manager.endpoint, # π.χ. http://localhost:<port>/v1
api_key=manager.api_key, # πάντα "not-required" για Foundry Local
model_id=manager.get_model_info("phi-4-mini").id,
)
agent = chat_client.as_agent(
name="LocalAgent",
instructions="You are a helpful assistant running fully on-device.",
)
Σημείωση: Το Foundry Local εκθέτει ένα συμβατό με OpenAI endpoint Chat Completions. Χρησιμοποιήστε το για τοπική ανάπτυξη και σενάρια εκτός σύνδεσης. Για το πλήρες σύνολο λειτουργιών του Responses API (καταστάσεις συνομιλιών, κλπ.), χρησιμοποιήστε Azure OpenAI ή ένα έργο Microsoft Foundry.
Το notebook workflow υπό όρους στο μάθημα 8 χρησιμοποιεί Bing grounding μέσω Microsoft Foundry. Αν σκοπεύετε να τρέξετε αυτό το δείγμα, προσθέστε αυτή τη μεταβλητή στο αρχείο .env σας:
| Μεταβλητή | Πού να τη βρείτε |
|---|---|
BING_CONNECTION_ID |
Πύλη Microsoft Foundry → το έργο σας → Management → Connected resources → σύνδεση Bing σας → αντιγράψτε το connection ID |
Αν είστε σε macOS και συναντήσετε ένα σφάλμα όπως:
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain
Αυτό είναι ένα γνωστό ζήτημα με το Python σε macOS όπου τα συστήματα πιστοποιητικά SSL δεν εμπιστεύονται αυτόματα. Δοκιμάστε τις ακόλουθες λύσεις με τη σειρά:
Επιλογή 1: Εκτελέστε το script Install Certificates του Python (συνιστάται)
# Αντικαταστήστε το 3.XX με την εγκατεστημένη έκδοση Python σας (π.χ., 3.12 ή 3.13):
/Applications/Python\ 3.XX/Install\ Certificates.command
Επιλογή 2: Χρήση connection_verify=False στο notebook σας (μόνο για notebooks GitHub Models)
Στο notebook του Μαθήματος 6 (06-building-trustworthy-agents/code_samples/06-system-message-framework.ipynb), υπάρχει ήδη μια σχολιασμένη προσωρινή λύση. Αποσχολιάστε το connection_verify=False όταν συναντήσετε σφάλματα πιστοποιητικών:
client = ChatCompletionsClient(
endpoint=endpoint,
credential=AzureKeyCredential(token),
connection_verify=False, # Απενεργοποιήστε την επαλήθευση SSL αν συναντήσετε σφάλματα πιστοποιητικού
)
⚠️ Προειδοποίηση: Η απενεργοποίηση της επαλήθευσης SSL (
connection_verify=False) μειώνει την ασφάλεια παρακάμπτοντας την επικύρωση πιστοποιητικών. Χρησιμοποιήστε το μόνο ως προσωρινή λύση σε αναπτυξιακά περιβάλλοντα. Μην το χρησιμοποιείτε ποτέ στην παραγωγή.
Επιλογή 3: Εγκαταστήστε και χρησιμοποιήστε το truststore
pip install truststore
Στη συνέχεια προσθέστε το παρακάτω στην αρχή του notebook ή του script σας πριν κάνετε οποιαδήποτε κλήση δικτύου:
import truststore
truststore.inject_into_ssl()
Αν έχετε οποιοδήποτε πρόβλημα με αυτή τη ρύθμιση, μπείτε στο Azure AI Community Discord ή δημιουργήστε ένα issue.
Είστε τώρα έτοιμοι να τρέξετε τον κώδικα για αυτό το μάθημα. Καλή εκμάθηση περισσότερων για τον κόσμο των AI Agents!
Εισαγωγή στους AI Agents και Περιπτώσεις Χρήσης
Αποποίηση ευθυνών: Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία μετάφρασης με τεχνητή νοημοσύνη Co-op Translator. Ενώ επιδιώκουμε την ακρίβεια, παρακαλούμε να έχετε υπόψη ότι οι αυτοματοποιημένες μεταφράσεις ενδέχεται να περιέχουν λάθη ή ανακρίβειες. Το πρωτότυπο έγγραφο στη μητρική του γλώσσα πρέπει να θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή λανθασμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.