[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M699HDPFVTGNHKD3NPWXN066":3,"skill-same:01M699HDPFVTGNHKD3NPWXN066":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},"01M699HDPFVTGNHKD3NPWXN066","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\u002Fid\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# Membuat Agen AI Lokal dengan Foundry Local dan Qwen\n\n> Keterampilan pendamping untuk [Lesson 17 – Membuat Agen AI Lokal](..\u002F..\u002F..\u002F17-creating-local-ai-agents\u002FREADME.md).\n> Gunakan ini untuk membantu pelajar membangun agen yang melakukan penalaran, memanggil alat, dan mencari\n> dokumentasi sepenuhnya di mesin mereka sendiri — tanpa inferensi cloud. Dasarkan setiap\n> rekomendasi pada konten pelajaran dan notebook yang dapat dijalankan.\n\n## Pemicu\n\nAktifkan keterampilan ini ketika pelajar ingin:\n- Menjalankan agen **sepenuhnya di perangkat** untuk alasan privasi, biaya, atau offline.\n- Menyajikan model secara lokal dengan **Foundry Local** dan terhubung melalui endpoint kompatibel OpenAI.\n- Menggunakan model **pemanggilan fungsi Qwen** untuk menjalankan panggilan alat lokal yang andal.\n- Menambahkan **RAG lokal** (Chroma) atau **server MCP lokal**.\n- Merancang strategi routing **hibrida** lokal\u002Fcloud.\n\n## Model mental inti\n\nSebuah SLM menukar cakupan untuk privasi, biaya, dan operasi offline. Strategi\nunggul: **biarkan SLM mengoordinasikan dan biarkan alat menangani pekerjaan berat.** Model\ntidak perlu *mengetahui* basis kode — ia perlu tahu kapan memanggil\n`read_file` dan `search_docs`. Ini memanfaatkan kekuatan SLM (keputusan terbatas\nseperti pemilihan alat) dan menghindari kelemahannya (pengetahuan luas, penalaran multi-langkah panjang).\n\n\n## Mengapa bagian-bagian ini dipilih\n\n- **Foundry Local** menyediakan **endpoint HTTP kompatibel OpenAI**, sehingga kode agen cloud dapat dipindahkan hanya dengan mengubah `base_url` (dan menggunakan kunci API placeholder lokal). Ini juga secara otomatis memilih build terbaik (CPU\u002FGPU\u002FNPU) untuk mesin tersebut.\n- Model **Qwen** dilatih untuk pemanggilan fungsi dan secara konsisten menghasilkan panggilan alat yang terstruktur dengan baik — inilah yang mengubah model *chat* lokal menjadi *agen* lokal.\n- **Chroma** berjalan dalam proses dan menyimpan vektor di disk, sehingga seluruh pipeline RAG (embed → store → retrieve → reason) tetap lokal.\n- **MCP** adalah transportasi, bukan layanan cloud: server MCP dapat dijalankan secara lokal melalui `stdio`.\n\n## Persiapan penting\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)  # placeholder lokal\n```\n\n~8 GB RAM adalah minimum yang realistis; GPU\u002FNPU membantu tetapi tidak wajib.\n\n## Pola kunci untuk direproduksi\n\nArahkan pelajar ke notebook\n[`17-local-agent-foundry-local.ipynb`](..\u002F..\u002F..\u002F17-creating-local-ai-agents\u002Fcode_samples\u002F17-local-agent-foundry-local.ipynb):\n\n- **Alat yang terisolasi**: setiap alat file menyelesaikan jalur dan menolak segala sesuatu di luar satu root proyek — bahkan secara lokal, sebuah alat berjalan dengan izin pengguna.\n- **Loop pemanggilan alat**: daftarkan alat dengan skema alat OpenAI, jalankan alat yang diminta secara lokal, masukkan hasil kembali, ulangi sampai jawaban akhir.\n- **RAG lokal**: masukkan dokumen ke koleksi Chroma; `search_docs` mengembalikan chunk teratas-k.\n- **MCP lokal**: terhubung ke server lokal melalui `stdio`; batasi ke direktori proyek dan validasi outputnya.\n\n## Routing hibrida (lokal sebagai salah satu model)\n\n| Situasi | Tempat berjalan |\n|-----------|---------------|\n| Data sensitif \u002F offline | SLM Lokal |\n| Tugas sederhana, terbatas | SLM Lokal (murah, cepat) |\n| Penalaran multi-langkah sulit pada data non-sensitif | Model Cloud |\n| Gangguan cloud | SLM Lokal (penurunan kualitas yang mulus) |\n\nIni mencerminkan ide routing model dari Lesson 16, dengan workstation sebagai salah satu\nrute. Pilih desain yang kembali ke lokal sehingga agen menurun\nkualitasnya daripada gagal total.\n\n## Pembatasan untuk asisten\n\n- Batasi setiap operasi file\u002Falat ke direktori proyek yang terisolasi.\n- Jangan kirim kode atau data ke cloud ketika tujuan pelajar adalah privasi\u002Foffline — pertahankan seluruh pipeline lokal.\n- Tetapkan harapan realistis untuk kualitas SLM; bergantung pada alat dan RAG daripada pengetahuan yang dihafal model.\n- Perhatikan bahwa Lesson 17 **tidak** memiliki endpoint Foundry Responses, jadi tindakan uji coba cloud tidak berlaku — validasi dengan menjalankan notebook secara lokal.\n\n---\n\n\u003C!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Penafian**:\nDokumen ini telah diterjemahkan menggunakan layanan terjemahan AI [Co-op Translator](https:\u002F\u002Fgithub.com\u002FAzure\u002Fco-op-translator). Meskipun kami berupaya untuk mencapai akurasi, harap diketahui bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang sah. Untuk informasi penting, disarankan menggunakan terjemahan profesional oleh manusia. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.\n\u003C!-- CO-OP TRANSLATOR DISCLAIMER END -->","# Membuat Agen AI Lokal dengan Foundry Local dan Qwen\n\n> Keterampilan pendamping untuk [Lesson 17 – Membuat Agen AI Lokal](..\u002F..\u002F..\u002F17-creating-local-ai-agents\u002FREADME.md).\n> Gunakan ini untuk membantu pelajar membangun agen yang melakukan penalaran, memanggil alat, dan mencari\n> dokumentasi sepenuhnya di mesin mereka sendiri — tanpa inferensi cloud. Dasarkan setiap\n> rekomendasi pada konten pelajaran dan notebook yang dapat dijalankan.\n\n## Pemicu\n\nAktifkan keterampilan ini ketika pelajar ingin:\n- Menjalankan agen **sepenuhnya di perangkat** untuk alasan privasi, biaya, atau offline.\n- Menyajikan model secara lokal dengan **Foundry Local** dan terhubung melalui endpoint kompatibel OpenAI.\n- Menggunakan model **pemanggilan fungsi Qwen** untuk menjalankan panggilan alat lokal yang andal.\n- Menambahkan **RAG lokal** (Chroma) atau **server MCP lokal**.\n- Merancang strategi routing **hibrida** lokal\u002Fcloud.\n\n## Model mental inti\n\nSebuah SLM menukar cakupan untuk privasi, biaya, dan operasi offline. Strategi\nunggul: **biarkan SLM mengoordinasikan dan biarkan alat menangani pekerjaan berat.** Model\ntidak perlu *mengetahui* basis kode — ia perlu tahu kapan memanggil\n`read_file` dan `search_docs`. Ini memanfaatkan kekuatan SLM (keputusan terbatas\nseperti pemilihan alat) dan menghindari kelemahannya (pengetahuan luas, penalaran multi-langkah panjang).\n\n\n## Mengapa bagian-bagian ini dipilih\n\n- **Foundry Local** menyediakan **endpoint HTTP kompatibel OpenAI**, sehingga kode agen cloud dapat dipindahkan hanya dengan mengubah `base_url` (dan menggunakan kunci API placeholder lokal). Ini juga secara otomatis memilih build terbaik (CPU\u002FGPU\u002FNPU) untuk mesin tersebut.\n- Model **Qwen** dilatih untuk pemanggilan fungsi dan secara konsisten menghasilkan panggilan alat yang terstruktur dengan baik — inilah yang mengubah model *chat* lokal menjadi *agen* lokal.\n- **Chroma** berjalan dalam proses dan menyimpan vektor di disk, sehingga seluruh pipeline RAG (embed → store → retrieve → reason) tetap lokal.\n- **MCP** adalah transportasi, bukan layanan cloud: server MCP dapat dijalankan secara lokal melalui `stdio`.\n\n## Persiapan penting\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)  # placeholder lokal\n```\n\n~8 GB RAM adalah minimum yang realistis; GPU\u002FNPU membantu tetapi tidak wajib.\n\n## Pola kunci untuk direproduksi\n\nArahkan pelajar ke notebook\n[`17-local-agent-foundry-local.ipynb`](..\u002F..\u002F..\u002F17-creating-local-ai-agents\u002Fcode_samples\u002F17-local-agent-foundry-local.ipynb):\n\n- **Alat yang terisolasi**: setiap alat file menyelesaikan jalur dan menolak segala sesuatu di luar satu root proyek — bahkan secara lokal, sebuah alat berjalan dengan izin pengguna.\n- **Loop pemanggilan alat**: daftarkan alat dengan skema alat OpenAI, jalankan alat yang diminta secara lokal, masukkan hasil kembali, ulangi sampai jawaban akhir.\n- **RAG lokal**: masukkan dokumen ke koleksi Chroma; `search_docs` mengembalikan chunk teratas-k.\n- **MCP lokal**: terhubung ke server lokal melalui `stdio`; batasi ke direktori proyek dan validasi outputnya.\n\n## Routing hibrida (lokal sebagai salah satu model)\n\n| Situasi | Tempat berjalan |\n|-----------|---------------|\n| Data sensitif \u002F offline | SLM Lokal |\n| Tugas sederhana, terbatas | SLM Lokal (murah, cepat) |\n| Penalaran multi-langkah sulit pada data non-sensitif | Model Cloud |\n| Gangguan cloud | SLM Lokal (penurunan kualitas yang mulus) |\n\nIni mencerminkan ide routing model dari Lesson 16, dengan workstation sebagai salah satu\nrute. Pilih desain yang kembali ke lokal sehingga agen menurun\nkualitasnya daripada gagal total.\n\n## Pembatasan untuk asisten\n\n- Batasi setiap operasi file\u002Falat ke direktori proyek yang terisolasi.\n- Jangan kirim kode atau data ke cloud ketika tujuan pelajar adalah privasi\u002Foffline — pertahankan seluruh pipeline lokal.\n- Tetapkan harapan realistis untuk kualitas SLM; bergantung pada alat dan RAG daripada pengetahuan yang dihafal model.\n- Perhatikan bahwa Lesson 17 **tidak** memiliki endpoint Foundry Responses, jadi tindakan uji coba cloud tidak berlaku — validasi dengan menjalankan notebook secara lokal.\n\n---\n\n\u003C!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Penafian**:\nDokumen ini telah diterjemahkan menggunakan layanan terjemahan AI [Co-op Translator](https:\u002F\u002Fgithub.com\u002FAzure\u002Fco-op-translator). Meskipun kami berupaya untuk mencapai akurasi, harap diketahui bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang sah. Untuk informasi penting, disarankan menggunakan terjemahan profesional oleh manusia. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.\n\u003C!-- CO-OP TRANSLATOR DISCLAIMER END -->",{"name":5,"license":14},"main","f09e94ffe170f8af6d3db7c42987bbe4db227723","translations\u002Fid\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\u002Fid\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"]