Scopri come le chiamate di funzione e l'uso di strumenti consentono all'IA di interagire con API e database. Impara oggi stesso a integrare Ultralytics nei flussi di lavoro agentici.
La chiamata di funzioni, spesso denominata utilizzo di strumenti, è un potente paradigma nell'intelligenza artificiale moderna (AI) che consente ai modelli di estendere le loro capacità oltre la generazione statica di testo o immagini. Invece di limitarsi a rispondere a un prompt basato su dati di addestramento interni, il modello può generare comandi strutturati per attivare funzioni di programmazione esterne, interrogare database o interagire con API REST. Questo approccio conferisce effettivamente all'AI la capacità di intraprendere azioni tangibili in ambienti digitali.
Quando un sistema di IA utilizza la chiamata di funzioni, gli sviluppatori forniscono al modello un elenco di strumenti disponibili descritti utilizzando lo schema JSON. Se il prompt dell'utente richiede dati in tempo reale o un'azione specifica , il modello interrompe il suo processo di generazione standard e produce un payload in formato JSON altamente strutturato che corrisponde ai parametri richiesti dallo strumento selezionato. Framework come l' API di chiamata di funzioni di OpenAI e il framework di utilizzo degli strumentiAnthropic hanno reso popolare questa tecnica, trasformando gli agenti conversazionali in capaci risolvitori di problemi.
L'integrazione dell'uso degli strumenti nei flussi di lavoro trasforma il modo in cui opera il software. Valutate da benchmark come il Berkeley Function Calling Leaderboard, queste capacità stanno guidando un cambiamento verso sistemi altamente autonomi.
È possibile esporre un modello di visione artificiale come strumento funzionale per un agente AI di livello superiore . In questa architettura, si definisce un Python che esegue l'inferenza, che un modello di ragionamento può attivare quando sono necessari dati visivi.
from ultralytics import YOLO
# Define a specific tool function for an AI agent to call
def count_objects_in_scene(image_url: str) -> str:
# Load the highly efficient YOLO26 model
model = YOLO("yolo26n.pt")
# Perform inference to analyze the visual data
results = model(image_url)
object_count = len(results[0].boxes)
# Return structured context back to the calling AI system
return f"Vision Analysis: Detected {object_count} objects in the scene."
# Simulated function call executed by an AI system
print(count_objects_in_scene("https://ultralytics.com/images/bus.jpg"))
Per comprendere appieno le moderne architetture di IA, è utile capire in che modo la chiamata di funzione è correlata e differisce da concetti simili: