[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M699VJ90SQPEA18DCDTJM40E":3,"skill-same:01M699VJ90SQPEA18DCDTJM40E":49},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":20,"linkOnly":21,"markdownContent":22,"markdownBody":23,"frontMatter":24,"refName":25,"commitSha":26,"skillDirectory":27,"forksCount":28,"repositoryHtmlUrl":29,"repositoryHomepageUrl":30,"ownerHtmlUrl":31,"ownerBlogUrl":32,"ownerDescription":33,"updatedAt":34,"install":35,"resources":48},"01M699VJ90SQPEA18DCDTJM40E","local-ai-agents",null,"microsoft\u002Fai-agents-for-beginners","microsoft","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F6154722?v=4","01M698VYDXZ6JW5WH3CRV650R8","Microsoft","01M6998ZK2275KMJE6Y5SEA2X2",79423,"MIT","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fai-agents-for-beginners\u002Fblob\u002Fmain\u002Ftranslations\u002Fsr\u002F.agents\u002Fskills\u002Flocal-ai-agents\u002FSKILL.md",[],[18,19],"ai agents","local ai agents","2026-11-10 10:12:30",false,"---\nname: local-ai-agents\nlicense: MIT\n---\n# Креирање Локалних AI Агената са Foundry Local и Qwen\n\n> Вештина пратилац за [Лекцију 17 – Креирање Локалних AI Агената](..\u002F..\u002F..\u002F17-creating-local-ai-agents\u002FREADME.md).\n> Користите је да помогнете ученику да направи агента који резонује, позива алате и претражује\n> документацију у потпуности на свом рачунару — без облачног извршавања. Свака\n> препорука треба да се заснива на садржају лекције и покретачкој свесци.\n\n## Триггери\n\nАктивирајте ову вештину када ученик жели да:\n- Покрене агента **у потпуности локално** због приватности, трошкова или рада без мреже.\n- Сервира модел локално помоћу **Foundry Local** и повезује се преко OpenAI-совместивог крајњег тачку.\n- Користи модел за **Qwen позив функција** да поуздано покреће локалне позиве алата.\n- Дода **локални RAG** (Chroma) или **локални MCP сервер**.\n- Дизајнира **хибридну** локалну\u002Fоблачну стратегију рутирања.\n\n## Основни ментални модел\n\nSLM жртвује ширину знања за приватност, трошкове и рад без мреже. Победничка\nстратегија: **нека SLM оркестрира, а алати нека обављају тежак посао.** Модел\nне мора да *зна* код — треба да зна када да позове `read_file` и `search_docs`.\nОво је снажна страна SLM-а (ограничене одлуке као што је избор алата) и слабост\nму је (опште знање, дуго мулти-хоп расуђивање).\n\n\n## Зашто баш ови делови\n\n- **Foundry Local** пружа **OpenAI-совместиви HTTP крајњи тачку**, тако да се код облачног агента преноси само промјеном `base_url` (и коришћењем локалног API кључа). Аутоматски бира најбољу верзију (CPU\u002FGPU\u002FNPU) за рачунар.\n- **Qwen** модели су обучени за позивање функција и конзистентно емитују добро формиране позиве алата — то претвара локални *chat* модел у локални *agent*.\n- **Chroma** ради у истом процесу и чува векторе на диску, тако да читав RAG процес (ендебд → чување → преузимање → резоновање) остаје локалан.\n- **MCP** је транспорт, а не облачна услуга: MCP сервер може да ради локално преко `stdio`.\n\n## Неопходна подешавања\n\n```bash\nfoundry model run qwen2.5-7b-instruct\nfoundry service status\n```\n\n```python\nfrom foundry_local import FoundryLocalManager\nfrom openai import OpenAI\n\nmanager = FoundryLocalManager(\"qwen2.5-7b-instruct\")\nclient = OpenAI(base_url=manager.endpoint, api_key=manager.api_key)  # локални заменика\n```\n\n~8 GB RAM-а је реалан минимум; GPU\u002FNPU помаже али није обавезан.\n\n## Кључни обрасци за репродукцију\n\nУкажите ученику на свеску\n[`17-local-agent-foundry-local.ipynb`](..\u002F..\u002F..\u002F17-creating-local-ai-agents\u002Fcode_samples\u002F17-local-agent-foundry-local.ipynb):\n\n- **Песак кутија алати**: сваки алат који ради са датотекама разреше путање и одбије било шта ван једног корена пројекта — чак и локално, алат ради са корисничким дозволама.\n- **Лупа позива алата**: региструјте алате према OpenAI шеми алата, извршавајте тражене алате локално, убацујте резултате назад, понављајте док не добијете коначни одговор.\n- **Локални RAG**: додајте документа у Chroma колекцију; `search_docs` враћа топ-k сегменте.\n- **Локални MCP**: повежите се са локалним сервером преко `stdio`; ограничите га на директоријум пројекта и верификујте његове излазе.\n\n## Хибридно рутирање (локално као један од модела)\n\n| Ситуација | Где ради |\n|-----------|---------------|\n| Осетљиви подаци \u002F без мреже | Локални SLM |\n| Једноставан, ограничен задатак | Локални SLM (јефтин, брз) |\n| Тешко мулти-хоп резонујући на неосетљивим подацима | Облачни модел |\n| Облачни прекид | Локални SLM (глатка деградација) |\n\nОво огледа идеју рутирања модела из Лекције 16, са радном станицом као једном\nод рута. Преферирајте дизајне који се враћају на локално тако да агент деградира\nквалитет уместо да потпуно не успе.\n\n## Заштитне мере за помоћника\n\n- Ограничите сваки рад са датотекама\u002Fалатима на песак кутију пројекта.\n- Не шаљите код или податке у облак када је циљ ученика приватност\u002Fрад без мреже — држите цео процес локално.\n- Поставите реалне очекивања за квалитет SLM-а; ослоните се на алате и RAG, а не на меморисано знање модела.\n- Имајте у виду да Лекција 17 нема **Foundry Responses крајњу тачку**, па акција облачног тестирања не важи — верификујте покретањем свеске локално.\n\n---\n\n\u003C!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Изјава о одрицању одговорности**:\nОвај документ је преведен коришћењем услуге за аутоматски превод [Co-op Translator](https:\u002F\u002Fgithub.com\u002FAzure\u002Fco-op-translator). Иако тежимо тачности, имајте у виду да аутоматски преводи могу садржати грешке или нетачности. Оригинални документ на његовом изворном језику треба сматрати ауторитативним извором. За критичне информације препоручује се професионални људски превод. Нисмо одговорни за било каква неспоразума или погрешна тумачења која произилазе из коришћења овог превода.\n\u003C!-- CO-OP TRANSLATOR DISCLAIMER END -->","# Креирање Локалних AI Агената са Foundry Local и Qwen\n\n> Вештина пратилац за [Лекцију 17 – Креирање Локалних AI Агената](..\u002F..\u002F..\u002F17-creating-local-ai-agents\u002FREADME.md).\n> Користите је да помогнете ученику да направи агента који резонује, позива алате и претражује\n> документацију у потпуности на свом рачунару — без облачног извршавања. Свака\n> препорука треба да се заснива на садржају лекције и покретачкој свесци.\n\n## Триггери\n\nАктивирајте ову вештину када ученик жели да:\n- Покрене агента **у потпуности локално** због приватности, трошкова или рада без мреже.\n- Сервира модел локално помоћу **Foundry Local** и повезује се преко OpenAI-совместивог крајњег тачку.\n- Користи модел за **Qwen позив функција** да поуздано покреће локалне позиве алата.\n- Дода **локални RAG** (Chroma) или **локални MCP сервер**.\n- Дизајнира **хибридну** локалну\u002Fоблачну стратегију рутирања.\n\n## Основни ментални модел\n\nSLM жртвује ширину знања за приватност, трошкове и рад без мреже. Победничка\nстратегија: **нека SLM оркестрира, а алати нека обављају тежак посао.** Модел\nне мора да *зна* код — треба да зна када да позове `read_file` и `search_docs`.\nОво је снажна страна SLM-а (ограничене одлуке као што је избор алата) и слабост\nму је (опште знање, дуго мулти-хоп расуђивање).\n\n\n## Зашто баш ови делови\n\n- **Foundry Local** пружа **OpenAI-совместиви HTTP крајњи тачку**, тако да се код облачног агента преноси само промјеном `base_url` (и коришћењем локалног API кључа). Аутоматски бира најбољу верзију (CPU\u002FGPU\u002FNPU) за рачунар.\n- **Qwen** модели су обучени за позивање функција и конзистентно емитују добро формиране позиве алата — то претвара локални *chat* модел у локални *agent*.\n- **Chroma** ради у истом процесу и чува векторе на диску, тако да читав RAG процес (ендебд → чување → преузимање → резоновање) остаје локалан.\n- **MCP** је транспорт, а не облачна услуга: MCP сервер може да ради локално преко `stdio`.\n\n## Неопходна подешавања\n\n```bash\nfoundry model run qwen2.5-7b-instruct\nfoundry service status\n```\n\n```python\nfrom foundry_local import FoundryLocalManager\nfrom openai import OpenAI\n\nmanager = FoundryLocalManager(\"qwen2.5-7b-instruct\")\nclient = OpenAI(base_url=manager.endpoint, api_key=manager.api_key)  # локални заменика\n```\n\n~8 GB RAM-а је реалан минимум; GPU\u002FNPU помаже али није обавезан.\n\n## Кључни обрасци за репродукцију\n\nУкажите ученику на свеску\n[`17-local-agent-foundry-local.ipynb`](..\u002F..\u002F..\u002F17-creating-local-ai-agents\u002Fcode_samples\u002F17-local-agent-foundry-local.ipynb):\n\n- **Песак кутија алати**: сваки алат који ради са датотекама разреше путање и одбије било шта ван једног корена пројекта — чак и локално, алат ради са корисничким дозволама.\n- **Лупа позива алата**: региструјте алате према OpenAI шеми алата, извршавајте тражене алате локално, убацујте резултате назад, понављајте док не добијете коначни одговор.\n- **Локални RAG**: додајте документа у Chroma колекцију; `search_docs` враћа топ-k сегменте.\n- **Локални MCP**: повежите се са локалним сервером преко `stdio`; ограничите га на директоријум пројекта и верификујте његове излазе.\n\n## Хибридно рутирање (локално као један од модела)\n\n| Ситуација | Где ради |\n|-----------|---------------|\n| Осетљиви подаци \u002F без мреже | Локални SLM |\n| Једноставан, ограничен задатак | Локални SLM (јефтин, брз) |\n| Тешко мулти-хоп резонујући на неосетљивим подацима | Облачни модел |\n| Облачни прекид | Локални SLM (глатка деградација) |\n\nОво огледа идеју рутирања модела из Лекције 16, са радном станицом као једном\nод рута. Преферирајте дизајне који се враћају на локално тако да агент деградира\nквалитет уместо да потпуно не успе.\n\n## Заштитне мере за помоћника\n\n- Ограничите сваки рад са датотекама\u002Fалатима на песак кутију пројекта.\n- Не шаљите код или податке у облак када је циљ ученика приватност\u002Fрад без мреже — држите цео процес локално.\n- Поставите реалне очекивања за квалитет SLM-а; ослоните се на алате и RAG, а не на меморисано знање модела.\n- Имајте у виду да Лекција 17 нема **Foundry Responses крајњу тачку**, па акција облачног тестирања не важи — верификујте покретањем свеске локално.\n\n---\n\n\u003C!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Изјава о одрицању одговорности**:\nОвај документ је преведен коришћењем услуге за аутоматски превод [Co-op Translator](https:\u002F\u002Fgithub.com\u002FAzure\u002Fco-op-translator). Иако тежимо тачности, имајте у виду да аутоматски преводи могу садржати грешке или нетачности. Оригинални документ на његовом изворном језику треба сматрати ауторитативним извором. За критичне информације препоручује се професионални људски превод. Нисмо одговорни за било каква неспоразума или погрешна тумачења која произилазе из коришћења овог превода.\n\u003C!-- CO-OP TRANSLATOR DISCLAIMER END -->",{"name":5,"license":14},"main","f09e94ffe170f8af6d3db7c42987bbe4db227723","translations\u002Fsr\u002F.agents\u002Fskills\u002Flocal-ai-agents",26019,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fai-agents-for-beginners","https:\u002F\u002Faka.ms\u002Fai-agents-beginners","https:\u002F\u002Fgithub.com\u002Fmicrosoft","https:\u002F\u002Fopensource.microsoft.com","Open source projects and samples from Microsoft","2026-11-07 12:51:12",{"source":7,"skillName":5,"commands":36,"prompt":46,"zipAvailable":47},[37,40,43],{"tool":38,"command":39},"npx","npx skills add microsoft\u002Fai-agents-for-beginners --skill local-ai-agents",{"tool":41,"command":42},"bunx","bunx skills add microsoft\u002Fai-agents-for-beginners --skill local-ai-agents",{"tool":44,"command":45},"pnpm","pnpm dlx skills add microsoft\u002Fai-agents-for-beginners --skill local-ai-agents","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fai-agents-for-beginners\u002Fblob\u002Fmain\u002Ftranslations\u002Fsr\u002F.agents\u002Fskills\u002Flocal-ai-agents\u002FSKILL.md",true,[],[50,68,79,84,92,99],{"skillNo":51,"name":52,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":53,"categories":54,"keywords":65,"publishedAt":20},"01M69A206TRZ8KK0CW0HYJF5V5","testing-course-samples","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fai-agents-for-beginners\u002Fblob\u002Fmain\u002Ftranslations\u002Fzh-TW\u002F.agents\u002Fskills\u002Ftesting-course-samples\u002FSKILL.md",[55,60],{"categoryNo":56,"categoryName":57,"taxonomyType":58,"taxonomyTypeDesc":59},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":61,"categoryName":62,"taxonomyType":63,"taxonomyTypeDesc":64},"01JBSEEDCAT000000000000039","教师与教育","PROFESSION","适用职业",[66,67],"testing","testing course samples",{"skillNo":69,"name":70,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":76,"publishedAt":20},"01M69A1XRB2SFHYRMEH0K08EKZ","microsoft-docs","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fai-agents-for-beginners\u002Fblob\u002Fmain\u002Ftranslations\u002Fzh-TW\u002F.agents\u002Fskills\u002Fmicrosoft-docs\u002FSKILL.md",[73],{"categoryNo":74,"categoryName":75,"taxonomyType":58,"taxonomyTypeDesc":59},"01JBSEEDCAT000000000000023","Skill与智能体开发",[77,8,78],"docs","microsoft docs",{"skillNo":80,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":20},"01M69A1VPZFJQ1HNGTZQ5P3WSC","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fai-agents-for-beginners\u002Fblob\u002Fmain\u002Ftranslations\u002Fzh-TW\u002F.agents\u002Fskills\u002Flocal-ai-agents\u002FSKILL.md",[],[18,19],{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":20},"01M69A1S947N7MM6V9JF85S2E7","jupyter-notebook","當使用者要求建立、搭建或編輯 Jupyter 筆記本（`.ipynb`）用於實驗、探索或教學時使用；優先使用隨附範本並執行輔助腳本 `new_notebook.py` 來產生一個乾淨的起始筆記本。","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fai-agents-for-beginners\u002Fblob\u002Fmain\u002Ftranslations\u002Fzh-TW\u002F.agents\u002Fskills\u002Fjupyter-notebook\u002FSKILL.md",[],[91],"jupyter notebook",{"skillNo":93,"name":94,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":20},"01M69A1Q8EXPWKZSQK69V6WF22","deploying-scalable-agents","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fai-agents-for-beginners\u002Fblob\u002Fmain\u002Ftranslations\u002Fzh-TW\u002F.agents\u002Fskills\u002Fdeploying-scalable-agents\u002FSKILL.md",[],[98],"deploying scalable agents",{"skillNo":100,"name":101,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":20},"01M69A1MHZTH3RH9N8VYSYG74X","azure-openai-to-responses","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fai-agents-for-beginners\u002Fblob\u002Fmain\u002Ftranslations\u002Fzh-TW\u002F.agents\u002Fskills\u002Fazure-openai-to-responses\u002FSKILL.md",[],[105],"azure openai to responses"]