OlympHill
smolagents logo

smolagentsMinimalistična Python knjižnica Hugging Face za ustvarjanje AI agentov na podlagi kode v le nekaj vrsticah

5.0 (4)
Daniel NikulshynPregledal Daniel Nikulshyn·Posodobljeno maj 2026

Pregled

smolagents je odprtokodni okvir agentov iz Hugging Face, zasnovan z naglašenjem enostavnosti in majhnega obsega. Namesto da bi agentov orkestrirali z dolgimi JSON klici orodij, jim omogoča, da izražajo akcije kot Python kodo, kar je pogosto bolj izrazito in zmanjšuje število korakov LLM, potrebnih za dokončanje naloge. Knjižnica je agnostična glede na modele, deluje z modeli, gostovanimi na Hugging Face Hub, lokalnimi strežniki inferenc in glavnimi ponudniki API, kot sta OpenAI in Anthropic. Pripravlja tudi možnosti varne izvedbe, kot sta E2B in Docker, tako da lahko generirani kode varno delujejo, in se integrira z običajnimi ekosistemi orodij, vključno s Hub Spaces in LangChain orodji. Usmerjen je na razvijalce, ki želijo transparenten, prilagodljiv izhodiščni toček za projekte agentov, namesto težkega, preveč opredeljenega frameworka, zato je izredno primeren za prototipiranje, raziskovanje in lahke proizvodne primere.

Ključne funkcije

  • CodeAgent, ki piše in izvaja Python za reševanje nalog
  • Podpora Hugging Face, OpenAI, Anthropic in lokalnim modelom
  • Izvedba kode v izoliranem okolju z uporabo E2B in Docker backendov
  • Integracija orodij z Hub, LangChain in po meri narejenimi Python funkcijami
  • Vgrajen ToolCallingAgent za tradicionalno uporabo orodij v JSON formatu
  • Lahka, z minimalnimi odvisnostmi zasnova

Cene

Model
Free
Ocena
5.0 / 5 (4)

Primeri uporabe

Hitro zgradite AI agente na osnovi kode

Razvijalci lahko ustvarijo agente, ki rešejo naloge s pisanjem in izvajanjem Python kode, kar zmanjša število korakov LLM v primerjavi z metodami klicanja orodij v JSON formatu.

Zaženite agente z vsakim LLM ponudnikom

Prototipirajte agente z uporabo modelov Hugging Face Hub, lokalnih strežnikov inferenc ali API-jev, kot so OpenAI in Anthropic, brez spremembe okvirja.

Varno izvajajte ustvarjeno kodo

Uporabite sandbox backend E2B ali Docker za izvajanje agentovo generirane Python kode v izoliranih okoljih, s čimer zmanjšate varnostne tveganja med samodejnim izvajanjem nalog.

Vgradite obstoječe ekosisteme orodij

Združite po meri narejene Python funkcije z Hub Spaces in LangChain orodji za razširitev zmogljivosti agenta, obenem pa ohranite minimalistično, berljivo izvorno kodo.

Prednosti in slabosti

Prednosti

  • Zelo majhna, berljiva izvorna koda, ki jo je enostavno razširiti
  • Orodja na osnovi kode zmanjšujejo korake in povečujejo izraznost agenta
  • Deluje z več LLM ponudniki in lokalnimi modeli
  • Izvedba v izoliranem okolju z E2B ali Dockerom za varnejše izvajanje kode
  • Brezplačno in popolnoma odprtokodno

Slabosti

  • Potrebuje znanje Pythona za učinkovito uporabo
  • Manj vgrajenih integracij kot večje okvizi agentov
  • Izvedba kode uvaja varnostne pomisleke, ki jih je treba obvladati
  • Manj primeren za kompleksno orkestracijo več agentov že z izvorne kode

Rekord bitk

V 1 bitki v Panteonu.

0
1.
0
2.
0
3.

Last battle

Ocene

5.0

Povprečje iz 4 ocen.

5
4
4
0
3
0
2
0
1
0

Prijavi se za oddajo ocene.

Naomi Suzuki

Naomi Suzuki

Apr 15, 2026

Use it every day

Honestly didn't expect to like it this much. Tool integration with Hub, LangChain, and custom Python functions is exactly what I needed, and code-based actions reduce steps and boost agent expressiveness. I do wish requires Python knowledge to use effectively, but I reach for it almost every day now and it just clicks.

WC

Wei Chen

Dec 18, 2025

Does the job

Pretty happy overall. Tool integration with Hub, LangChain, and custom Python functions just works and very small, readable codebase that is easy to extend. Code execution introduces security considerations to manage can be annoying, but no dealbreakers — I'd recommend it to a friend without hesitating.

Jamal Carter

Jamal Carter

Nov 25, 2025

Does the job

Pretty happy overall. Sandboxed code execution with E2B and Docker backends just works and sandboxed execution via E2B or Docker for safer code running. but no dealbreakers — I'd recommend it to a friend without hesitating.

SG

Sanjay Gupta

Jul 11, 2025

Skeptical, then convinced

I went in skeptical — most tools in this space overpromise. It actually delivers on codeAgent that writes and executes Python to solve tasks, and code-based actions reduce steps and boost agent expressiveness caught me off guard. still, I'd recommend giving it a real trial.

Vprašanja

Kako močni so odprti modeli za agentne tokove?

Ustvarili smo instance CodeAgent z nekaterimi vodilnimi modeli in jih primerjali na tej meritvi, ki združuje vprašanja iz več različnih meritvenih baz, da bi ponudili raznoliko kombinacijo izzivov. Kodo za meritve najdete tukaj za več podrobnosti o agentnem nastavitvi, ki je bila uporabljena, in si oglejte primerjavo uporabe LLM kodnih agentov v primerjavi z navadnimi (spoiler: kodni agenti delujejo bolje). Ta primerjava kaže, da lahko odprti modeli sedaj premikajo najboljše zaprte modele!

Asked by Diego Fernández · Feb 16, 2026

Kako je ta knjižnica smola?

Poskušali smo ohraniti abstrakcije na strogo minimum: glavni kodo v agents.py ima <1 000 vrstic kode. Kljub temu implementiramo več vrst agentov: CodeAgent zapisa svoje dejanja kot izrezke Python kode, bolj klasični ToolCallingAgent pa izkorišča vstavljene metode klicev orodij. Imamo tudi hierarhije multi-agentov, uvoz iz zbirk orodij, oddaljeno izvajanje kode, modele vizualizacije… Na kakšen način pa je smiselno uporabiti okvir? Ker je velik del tega dela nepopravljivo zapleten. Na primer, agent kode mora ohraniti konzistenten format kode po celotnem sistemskem povpraševanju, svojemu razčlenjevalniku in izvajanju. Zato naš okvir obravnava to zapletenost v vašem imenu. Vendar vas še vedno spodbujamo, da preprograzujete izvorni kodo in uporabljate le dele, ki jih potrebujete, izključujoč vse ostalo!

Asked by Ludovic Girard · Nov 27, 2025

Kako delujejo Code agenti?

Naš CodeAgent deluje večino časa kot klasični ReAct agenti – razlika je v tem, da LLM motor zapiše svoje dejanja kot izseke Python kode. Dejanja so zdaj izseki Python kode. Zato se klici orodij izvedejo kot klici funkcij v Pythonu. Na primer, agent lahko izvede iskanje po več spletnih straneh v enem samem dejanju: Zapisovanje dejanj kot izseki kode je bolj učinkovito kot trenutna industrijska praksa, kjer LLM izpiše slovar orodij, ki jih želi klicati: uporablja 30 % manj korakov (in 30 % manj klicev LLM) in doseže višjo zmogljivost pri zahtevnih benchmarkih. Pojdite na naš uvodni pregledu agentov za več informacij. Ker je izvajanje kode lahko resen varnostni problem (neobvezno izvajanje kode!), bi morali kodo agenta izvajati v sandboxu. Podprašujemo več možnosti: E2B, Blaxel, Modal – upravljani oblačni sandboxi, najpreprostejša možnost je Docker – samostojno gostovanje z izolacijo podajnika. Vgrajeni LocalPythonExecutor ni varnostni sandbox. Uporablja nekatere omejitve, vendar se jih je mogoče obtiči in ga ne sme uporabljati kot varnostne meje. Poleg CodeAgent ponujamo tudi standardni ToolCallingAgent, ki dejanja zapisuje kot JSON/tekstovne blobs. Izberete lahko kateri slog, ki najbolj ustreza vašemu primeru uporabe.

Asked by Greta Nowak · Oct 31, 2025

Postavi vprašanje

Alternative za Javni frameworki za učne agente