Code Velocity
Εργαλεία Προγραμματιστών

SageMaker AI: Επιτάχυνση της κλήσης εργαλείων από πράκτορες με εξατομίκευση μοντέλων χωρίς διακομιστή

·5 λεπτά ανάγνωσης·AWS·Αρχική πηγή
Κοινοποίηση
Διεπαφή Amazon SageMaker AI Studio που δείχνει επιλογές για εξατομίκευση μοντέλων χωρίς διακομιστή και κλήση εργαλείων από πράκτορες.

SageMaker AI: Επιτάχυνση της κλήσης εργαλείων από πράκτορες με εξατομίκευση μοντέλων χωρίς διακομιστή

Το Agentic AI έχει φέρει επανάσταση στον τρόπο που σκεφτόμαστε τις αυτοματοποιημένες εργασίες, επιτρέποντας στα συστήματα να λαμβάνουν αποφάσεις και να αλληλεπιδρούν με τον κόσμο μέσω εξειδικευμένων εργαλείων. Ωστόσο, η πραγματική χρησιμότητα των πρακτόρων AI στην παραγωγή εξαρτάται από την ικανότητά τους να εκτελούν αξιόπιστα την κλήση εργαλείων από πράκτορες. Αυτός είναι ο τρόπος με τον οποίο οι πράκτορες αναζητούν σε βάσεις δεδομένων, ενεργοποιούν σύνθετες ροές εργασίας, ανακτούν δεδομένα σε πραγματικό χρόνο και ενεργούν αποφασιστικά εκ μέρους ενός χρήστη. Δυστυχώς, ένα κοινό εμπόδιο στην ευρεία υιοθέτηση ήταν η τάση των βασικών μεγάλων γλωσσικών μοντέλων (LLM) να παραισθάνονται εργαλεία, να περνούν λανθασμένες παραμέτρους ή να επιχειρούν ενέργειες όταν απαιτείται διευκρίνιση. Τέτοιες αποτυχίες διαβρώνουν την εμπιστοσύνη και εμποδίζουν σημαντικά την ανάπτυξη στην παραγωγή.

Το Amazon SageMaker AI αναλαμβάνει να λύσει αυτές τις κρίσιμες προκλήσεις. Προσφέροντας εξατομίκευση μοντέλων χωρίς διακομιστή, οι προγραμματιστές μπορούν να ρυθμίσουν λεπτομερώς τα LLM για στιβαρή κλήση εργαλείων από πράκτορες χωρίς το τυπικό λειτουργικό κόστος. Κεντρικό σημείο αυτής της καινοτομίας είναι η Ενισχυτική Μάθηση με Επαληθεύσιμες Ανταμοιβές (RLVR), μια τεχνική που επιτρέπει στα μοντέλα να παράγουν και να επικυρώνουν τις δικές τους απαντήσεις, μαθαίνοντας να ευνοούν τις επιτυχημένες αλληλεπιδράσεις με εργαλεία. Αυτή η ανάρτηση εμβαθύνει στον τρόπο με τον οποίο το SageMaker AI, χρησιμοποιώντας το RLVR, βελτιώνει δραματικά την αξιοπιστία των πρακτόρων, παρουσιάζοντας μια βελτίωση 57% στην ανταμοιβή κλήσης εργαλείων σε άγνωστα σενάρια με ένα λεπτομερώς ρυθμισμένο μοντέλο Qwen 2.5 7B Instruct.

Η Υπόσχεση και οι Κίνδυνοι της Κλήσης Εργαλείων από Πράκτορες

Η έννοια των πρακτόρων AI που αλληλεπιδρούν με εξωτερικά συστήματα μέσω εργαλείων αποτελεί ακρογωνιαίο λίθο των προηγμένων εφαρμογών AI. Φανταστείτε έναν πράκτορα που μπορεί να κάνει κράτηση πτήσεων, να συνοψίσει έγγραφα από μια βάση δεδομένων ή ακόμα και να εκτελέσει κώδικα με βάση μια προτροπή φυσικής γλώσσας. Αυτή η λειτουργικότητα είναι ακριβώς αυτό που επιτρέπει η κλήση εργαλείων από πράκτορες. Ωστόσο, ο δρόμος προς την αξιόπιστη χρήση εργαλείων είναι γεμάτος προκλήσεις.

Τα βασικά LLM, αν και ισχυρά στην παραγωγή γλώσσας, συχνά στερούνται την λεπτομερή κατανόηση που απαιτείται για την ακριβή κλήση εργαλείων. Μπορεί να συμπεράνουν ένα εργαλείο που δεν υπάρχει, να παρερμηνεύσουν την πρόθεση του χρήστη οδηγώντας σε λανθασμένες τιμές παραμέτρων ή να αποτύχουν να αναγνωρίσουν πότε λείπουν κρίσιμες πληροφορίες. Αυτά τα λάθη οδηγούν σε απογοητευτικές εμπειρίες χρήστη και καθιστούν την ανάπτυξη σε επίπεδο επιχείρησης επικίνδυνη. Για τους οργανισμούς που επιδιώκουν να λειτουργήσουν αποτελεσματικά τους πράκτορες AI, η διασφάλιση προβλέψιμης και αξιόπιστης εκτέλεσης εργαλείων είναι πρωταρχικής σημασίας. Το διακύβευμα είναι υψηλό, καθώς οι αξιόπιστοι πράκτορες μπορούν να ξεκλειδώσουν πρωτοφανή επίπεδα αυτοματοποίησης και αποδοτικότητας, ενώ οι αναξιόπιστοι μπορούν να οδηγήσουν σε δαπανηρά λάθη και δυσαρέσκεια των χρηστών. Γι' αυτό η στιβαρή βελτιστοποίηση μοντέλων για ροές εργασίας πρακτόρων είναι απαραίτητη, μια εργασία που γίνεται απλούστερη με πλατφόρμες όπως το SageMaker AI.

Εξατομίκευση Μοντέλων χωρίς Διακομιστή: Το Πλεονέκτημα του SageMaker AI

Η παραδοσιακή προσέγγιση για τη βελτίωση της απόδοσης των LLM συχνά περιλαμβάνει σημαντική διαχείριση υποδομής – από την προμήθεια GPU και την ορχήστρωση μνήμης έως τη σύνθετη υποδομή ανταμοιβής και τη δημιουργία σημείων ελέγχου για την ενισχυτική μάθηση. Αυτές οι εργασίες εισάγουν σημαντικό λειτουργικό κόστος, εκτρέποντας πολύτιμους πόρους προγραμματιστών από την εστίαση στο βασικό πρόβλημα: τη βελτίωση της συμπεριφοράς του μοντέλου.

Η εξατομίκευση μοντέλων χωρίς διακομιστή του Amazon SageMaker AI αφαιρεί αυτό το βάρος. Οι προγραμματιστές μπορούν να επιλέξουν ένα βασικό μοντέλο (π.χ. Qwen, Llama, GPT-OSS), να διαμορφώσουν μια τεχνική λεπτομερούς ρύθμισης όπως το RLVR, να δείξουν στα δεδομένα τους και να ορίσουν μια συνάρτηση ανταμοιβής. Το SageMaker AI διαχειρίζεται στη συνέχεια ολόκληρη τη διαδικασία του backend, από την κλιμάκωση των υπολογιστικών πόρων έως τη διαχείριση των φάσεων εκπαίδευσης και της ρύθμισης υπερπαραμέτρων. Αυτή η αφαίρεση επιτρέπει στις ομάδες να επικεντρωθούν στην ποιότητα του συνόλου δεδομένων και στον σχεδιασμό της συνάρτησης ανταμοιβής, που είναι οι πραγματικοί κινητήριες δυνάμεις της βελτίωσης του μοντέλου. Για τις επιχειρήσεις, αυτή η προσέγγιση χωρίς διακομιστή μεταφράζεται σε ταχύτερους κύκλους επανάληψης, μειωμένο κόστος και χαμηλότερο εμπόδιο εισόδου για προηγμένη εξατομίκευση LLM. Είναι μια αλλαγή παιχνιδιού για όσους επιδιώκουν να κλιμακώσουν το AI για όλους, απλοποιώντας σύνθετες διαδικασίες λεπτομερούς ρύθμισης LLM.

Γιατί το RLVR υπερέχει στην Κλήση Εργαλείων από Πράκτορες

Όταν πρόκειται να διδάξετε έναν πράκτορα AI να χρησιμοποιεί αξιόπιστα εργαλεία, δεν είναι όλες οι τεχνικές λεπτομερούς ρύθμισης ίσες. Το Supervised Fine-Tuning (SFT) απαιτεί σχολαστικά επισημασμένα παραδείγματα για κάθε πιθανή συμπεριφορά που πρέπει να επιδεικνύει ένα μοντέλο – κλήση εργαλείου, αίτημα διευκρίνισης ή άρνηση αιτήματος. Η πρόκληση με το SFT είναι ο αγώνας του να γενικεύσει τη διαδικασία λήψης αποφάσεων μεταξύ αυτών των διακριτών συμπεριφορών, αποδίδοντας συχνά καλά σε μοτίβα που έχουν παρατηρηθεί κατά την εκπαίδευση, αλλά αποτυγχάνοντας σε νέα σενάρια.

Η Ενισχυτική Μάθηση με Επαληθεύσιμες Ανταμοιβές (RLVR) προσφέρει μια πιο δυναμική και αποτελεσματική λύση. Σε αντίθεση με το SFT, το RLVR λειτουργεί με έναν βρόχο ανάδρασης:

  1. Παραγωγή Υποψηφίων: Για κάθε προτροπή, το μοντέλο παράγει πολλαπλές (π.χ. οκτώ) πιθανές απαντήσεις.
  2. Αξιολόγηση Συνάρτησης Ανταμοιβής: Μια προκαθορισμένη συνάρτηση ανταμοιβής βαθμολογεί αντικειμενικά κάθε υποψήφιο, υποδεικνύοντας την ποιότητα, την ορθότητά του και τη συμμόρφωσή του με την επιθυμητή συμπεριφορά (π.χ., κάλεσε το σωστό εργαλείο με τις σωστές παραμέτρους;).
  3. Ενημέρωση Πολιτικής: Χρησιμοποιώντας το Group Relative Policy Optimization (GRPO), η πολιτική του μοντέλου ενημερώνεται για να ενισχύσει τις απαντήσεις που έλαβαν βαθμολογία πάνω από τον μέσο όρο της παραγόμενης ομάδας. Αυτή η διαδικασία καθοδηγεί επαναληπτικά το μοντέλο προς πιο βέλτιστη συμπεριφορά.

Αυτή η επαναληπτική μάθηση επιτρέπει στο μοντέλο να κατανοήσει όχι μόνο πώς να εκτελέσει μια συγκεκριμένη ενέργεια, αλλά πότε να την εκτελέσει. Μαθαίνει τις αποχρώσεις της διάκρισης μεταξύ καταστάσεων όπου μια κλήση εργαλείου είναι κατάλληλη, απαιτείται διευκρίνιση ή άρνηση είναι η καλύτερη πορεία δράσης. Επειδή η κλήση εργαλείων έχει έναν φυσικά επαληθεύσιμο στόχο—εάν το μοντέλο κάλεσε τη σωστή λειτουργία με τις σωστές παραμέτρους—ταιριάζει εξαιρετικά καλά στο παράδειγμα RLVR, καθιστώντας το ιδανικό για πράκτορες AI που απαιτούν υψηλή αξιοπιστία. Αυτή η μέθοδος αντιμετωπίζει αποτελεσματικά την πρόκληση του σχεδιασμού πρακτόρων για αντίσταση στην έγχυση προτροπών ενισχύοντας ακριβή μοτίβα δράσης.

Προετοιμασία Δεδομένων Εκπαίδευσης Υψηλής Ποιότητας για RLVR

Η επιτυχία κάθε προσπάθειας λεπτομερούς ρύθμισης, ειδικά με το RLVR, εξαρτάται από την ποιότητα και την πληρότητα των δεδομένων εκπαίδευσης. Για την κλήση εργαλείων από πράκτορες, το σύνολο δεδομένων πρέπει να διδάξει στο μοντέλο περισσότερα από απλές σωστές κλήσεις API. Πρέπει να περιλαμβάνει όλο το φάσμα των απαιτούμενων συμπεριφορών του πράκτορα.

Η προσέγγισή μας περιελάμβανε τη δημιουργία 1.500 συνθετικών παραδειγμάτων εκπαίδευσης χρησιμοποιώντας το Kiro, το AI-powered IDE της Amazon. Αυτά τα παραδείγματα κάλυψαν πέντε διαφορετικά σχήματα εργαλείων: get_weather_forecast, search_flights, translate_text, currency_convert και get_statistics. Το πιο σημαντικό είναι ότι τα δεδομένα διανεμήθηκαν σε τρεις βασικές συμπεριφορές πρακτόρων για να διασφαλιστεί η ισορροπημένη μάθηση:

ΣυμπεριφοράΠεριγραφήΠοσοστόΠαράδειγμα Ground Truth
ΕκτέλεσηΟ χρήστης παρέχει όλες τις απαραίτητες παραμέτρους, το μοντέλο πρέπει να καλέσει ένα εργαλείο.60%[{"name": "get_weather_forecast", "arguments": {"city": "San Francisco"}}]
ΔιευκρίνισηΑπό το αίτημα του χρήστη λείπουν οι απαιτούμενες παράμετροι, το μοντέλο πρέπει να ζητήσει διευκρινίσεις.25%Για να σας παράσχω τις πληροφορίες καιρού, θα μπορούσατε να προσδιορίσετε την τοποθεσία;
ΆρνησηΤο αίτημα είναι επιβλαβές ή εκτός πεδίου, το μοντέλο πρέπει να αρνηθεί ευγενικά.15%Λυπάμαι, δεν μπορώ να εκπληρώσω αυτό το αίτημα.

Κάθε παράδειγμα εκπαίδευσης ακολουθούσε τη μορφή JSONL, συμπεριλαμβανομένης μιας προτροπής (οδηγίες συστήματος και αίτημα χρήστη) και μιας ground_truth στο πεδίο reward_model έναντι της οποίας βαθμολογεί η συνάρτηση ανταμοιβής. Η διαφοροποίηση της διατύπωσης μεταξύ επίσημης, καθημερινής και σύντομης ενίσχυσε περαιτέρω τη στιβαρότητα του συνόλου δεδομένων. Ενώ τα συνθετικά δεδομένα παρέχουν ένα πρακτικό σημείο εκκίνησης, οι οργανισμοί με υπάρχουσες ροές εργασίας πρακτόρων μπορούν να αξιοποιήσουν πραγματικές προτροπές χρηστών και κλήσεις εργαλείων από αρχεία καταγραφής παραγωγής για να επιτύχουν ακόμη υψηλότερη ποιότητα εκπαίδευσης. Αυτή η προετοιμασία δεδομένων είναι ένα κρίσιμο βήμα στη μηχανική προτροπών για σύνθετες συμπεριφορές πρακτόρων.

{
  "prompt": [
    {"role": "system", "content": "Είστε ένας χρήσιμος βοηθός. Όταν χρησιμοποιείτε εργαλεία, απαντήστε με: [...]"},
    {"role": "user", "content": "Μάθετε τον καιρό για το Σαν Φρανσίσκο"}
  ],
  "reward_model": {
    "ground_truth": "[{\"name\": \"get_weather_forecast\", \"arguments\": {\"city\": \"San Francisco\"}}]"
  }
}
{
  "prompt": [
    {"role": "system", "content": "Είστε ένας χρήσιμος βοηθός. Όταν χρησιμοποιείτε εργαλεία, απαντήστε με: [...]"},
    {"role": "user", "content": "Μάθετε τον καιρό"}
  ],
  "reward_model": {
    "ground_truth": "Για να σας παράσχω τις πληροφορίες καιρού, θα μπορούσατε να προσδιορίσετε την τοποθεσία;"
  }
}

Λεπτομερής Ρύθμιση του Qwen 2.5 7B Instruct με το SageMaker AI

Η διαδικασία λεπτομερούς ρύθμισης ενός μοντέλου όπως το Qwen 2.5 7B Instruct εντός του Amazon SageMaker AI Studio είναι απλοποιημένη και διαισθητική. Αφού βεβαιωθείτε ότι έχουν εκπληρωθεί οι απαραίτητες προϋποθέσεις (λογαριασμός AWS, ρόλος IAM AWS, τομέας SageMaker AI, S3 bucket), οι χρήστες μπορούν να μεταβούν στην ενότητα Μοντέλα στο SageMaker AI Studio.

Από εκεί, επιλέγοντας Qwen 2.5 7B Instruct και επιλέγοντας Προσαρμογή με UI ανοίγει μια ειδική σελίδα διαμόρφωσης. Αυτή η διεπαφή επιτρέπει:

  • Επιλογή Τεχνικής: Ρητή επιλογή της Ενισχυτικής Μάθησης με Επαληθεύσιμες Ανταμοιβές (RLVR) από το αναπτυσσόμενο μενού.
  • Εισαγωγή Δεδομένων: Παραπομπή στα προετοιμασμένα δεδομένα εκπαίδευσης που είναι αποθηκευμένα σε ένα S3 bucket του Amazon.
  • Συνάρτηση Ανταμοιβής: Διαμόρφωση του διαβαθμισμένου μηχανισμού βαθμολόγησης που καθορίζει τον τρόπο αξιολόγησης των υποψήφιων απαντήσεων έναντι της ground_truth.
  • Διαμόρφωση Υπερπαραμέτρων: Προσαρμογή παραμέτρων όπως το μέγεθος δέσμης (batch size), αν και το SageMaker AI συχνά χειρίζεται αυτόματα τις βέλτιστες ρυθμίσεις.

Το SageMaker AI υποστηρίζει ένα ευρύ φάσμα οικογενειών μοντέλων, συμπεριλαμβανομένων των Amazon Nova, GPT-OSS, Llama, Qwen και DeepSeek, παράλληλα με διάφορες τεχνικές όπως το Supervised Fine-Tuning (SFT), το Direct Preference Optimization (DPO), το RLVR και το Reinforcement Learning from AI Feedback (RLAIF). Η ενσωματωμένη παρακολούθηση MLflow παρέχει ορατότητα στις μετρικές εκπαίδευσης και επικύρωσης, απλοποιώντας την παρακολούθηση απόδοσης και την επανάληψη. Αυτή η ευκολία χρήσης επιταχύνει δραματικά τον κύκλο ανάπτυξης για προγραμματιστές που κατασκευάζουν εξελιγμένες github-agentic-workflows.

Αξιολόγηση και Επιτυχία Ανάπτυξης

Η αποτελεσματικότητα του λεπτομερώς ρυθμισμένου μοντέλου Qwen 2.5 7B Instruct αξιολογήθηκε αυστηρά σε δεδομένα που δεν είχαν χρησιμοποιηθεί, συμπεριλαμβανομένων σεναρίων με εντελώς άγνωστα εργαλεία—μια κρίσιμη δοκιμή για τη γενίκευση. Τα αποτελέσματα ήταν εντυπωσιακά: το λεπτομερώς ρυθμισμένο μοντέλο πέτυχε μια αξιοσημείωτη βελτίωση 57% στην ανταμοιβή κλήσης εργαλείων σε σύγκριση με το βασικό μοντέλο. Αυτό το σημαντικό άλμα στην απόδοση σε σενάρια που δεν είχε συναντήσει κατά την εκπαίδευση υπογραμμίζει τη δύναμη του RLVR στη διδασκαλία των μοντέλων στιβαρών ικανοτήτων λήψης αποφάσεων για την αλληλεπίδραση με εργαλεία.

Αυτή η ενισχυμένη αξιοπιστία μεταφράζεται άμεσα σε υψηλότερη εμπιστοσύνη στην ανάπτυξη πρακτόρων AI σε περιβάλλοντα παραγωγής. Ελαχιστοποιώντας περιπτώσεις παραίσθησης εργαλείων, λανθασμένων παραμέτρων και ακατάλληλων ενεργειών, οι επιχειρήσεις μπορούν να αξιοποιήσουν τους πράκτορες AI για πιο κρίσιμες και ευαίσθητες εργασίες. Με το SageMaker AI να χειρίζεται τις πολυπλοκότητες της ανάπτυξης μοντέλων και της διαχείρισης υποδομής, οι προγραμματιστές μπορούν να μεταβούν απρόσκοπτα από τη λεπτομερή ρύθμιση στην παραγωγή, αξιοποιώντας πλήρως το δυναμικό των λύσεών τους AI που λειτουργούν ως πράκτορες. Αυτή η δυνατότητα ευθυγραμμίζεται με το ευρύτερο όραμα της λειτουργικοποίησης του agentic AI για πραγματικό αντίκτυπο.

Συνοψίζοντας, ο συνδυασμός της εξατομίκευσης μοντέλων χωρίς διακομιστή του Amazon SageMaker AI και των στιβαρών δυνατοτήτων μάθησης του RLVR παρέχει μια ισχυρή οδό για την κατασκευή εξαιρετικά αξιόπιστων συστημάτων κλήσης εργαλείων από πράκτορες. Αυτή η καινοτόμος προσέγγιση επιταχύνει την ανάπτυξη, μειώνει το λειτουργικό βάρος και τελικά προσφέρει πράκτορες AI που λειτουργούν με πρωτοφανή ακρίβεια και αξιοπιστία.

Συχνές ερωτήσεις

What is agentic tool calling and why is it crucial for AI agents?
Agentic tool calling is the mechanism that empowers AI agents to perform real-world actions like querying databases, initiating workflows, fetching real-time information, and executing tasks on a user's behalf. It's crucial because it bridges the gap between language understanding and practical application, allowing AI agents to move beyond just generating text to actually interacting with external systems and data sources, thereby making them genuinely useful in production environments.
What are the common challenges AI agents face when performing tool calls?
AI agents frequently encounter challenges such as hallucinating tools that don't exist, passing incorrect parameters to valid tools, or attempting actions when they should instead seek clarification from the user. These failures lead to unreliable agent behavior, eroding user trust and posing significant hurdles to the successful deployment of AI agents in critical production systems, ultimately limiting their real-world utility.
How does Amazon SageMaker AI address the challenges of agentic tool calling?
Amazon SageMaker AI addresses these challenges through its serverless model customization capabilities, particularly using Reinforcement Learning with Verifiable Rewards (RLVR). This approach allows developers to fine-tune large language models (LLMs) to improve their tool-calling accuracy without managing complex infrastructure. SageMaker AI handles the operational overhead of GPU provisioning, memory management, and reward infrastructure, letting users focus on data, reward functions, and model behavior.
What is Reinforcement Learning with Verifiable Rewards (RLVR) and how does it work?
RLVR is a powerful fine-tuning technique where the model generates multiple candidate responses for a given prompt. A predefined reward function then evaluates these candidates, providing a signal about their quality and correctness. The model subsequently updates its internal policy to favor responses that received higher reward scores, using methods like Group Relative Policy Optimization (GRPO), thereby iteratively learning to produce more accurate and desired outputs for specific tasks like tool calling.
Why is RLVR considered more effective than Supervised Fine-Tuning (SFT) for tool calling tasks?
While SFT requires meticulously labeled examples for every desired behavior (e.g., calling a tool, clarifying, refusing), RLVR operates differently. SFT can struggle to generalize decision-making between these behaviors. RLVR, by contrast, allows the model to learn the optimal decision boundary by generating multiple candidates and receiving immediate feedback via a reward function, enabling it to better understand *when* to execute a tool call versus *when* to ask for more information or refuse a request.
How is training data prepared for RLVR in Amazon SageMaker AI for agentic tool calling?
Training data for RLVR in SageMaker AI is prepared as JSONL files, where each entry contains a prompt (system and user messages) and a `ground_truth` within a `reward_model` field. This `ground_truth` is what the reward function scores against. To ensure robust agent behavior, datasets are typically designed to cover three distinct scenarios: executing a tool call when all parameters are present, clarifying when information is missing, and refusing requests that are out of scope or harmful. Synthetic data generation tools like Kiro can be used for this purpose.
What agent behaviors are critical for building robust and reliable tool-calling AI agents?
Building robust tool-calling AI agents requires them to master three critical behaviors. First, they must `Execute` a tool call accurately when all necessary information is provided by the user. Second, they need to `Clarify` by asking follow-up questions when essential parameters are missing from a user's request. Third, they must `Refuse` gracefully when a request is out of scope, harmful, or cannot be fulfilled. Training models across these behaviors ensures comprehensive and trustworthy agent performance.
What prerequisites are needed to use serverless model customization in SageMaker AI?
To leverage serverless model customization in Amazon SageMaker AI, users must have an active AWS account, an AWS IAM role configured with the necessary permissions for SageMaker, a SageMaker AI domain providing Studio access for development, and an Amazon Simple Storage Service (Amazon S3) bucket to store training data and model outputs securely. These components ensure a secure and functional environment for fine-tuning models.

Μείνετε ενημερωμένοι

Λάβετε τα τελευταία νέα AI στο email σας.

Κοινοποίηση