{"id":42148916,"url":"https://github.com/wmeints/effective-llm-applications-workshop","last_synced_at":"2026-01-26T18:11:10.162Z","repository":{"id":293103377,"uuid":"951762518","full_name":"wmeints/effective-llm-applications-workshop","owner":"wmeints","description":"The workshop for my book \"Building Effective LLM-Based Applications with Semantic Kernel\"","archived":false,"fork":false,"pushed_at":"2025-05-15T09:42:49.000Z","size":500,"stargazers_count":1,"open_issues_count":5,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-12-06T20:59:03.577Z","etag":null,"topics":["course","csharp","llm","semantic-kernel","teaching","workshop"],"latest_commit_sha":null,"homepage":"https://wmeints.github.io/effective-llm-applications-workshop/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wmeints.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-03-20T07:49:58.000Z","updated_at":"2025-06-13T08:32:02.000Z","dependencies_parsed_at":"2025-05-13T18:09:13.370Z","dependency_job_id":null,"html_url":"https://github.com/wmeints/effective-llm-applications-workshop","commit_stats":null,"previous_names":["wmeints/effective-llm-applications-workshop"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wmeints/effective-llm-applications-workshop","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wmeints%2Feffective-llm-applications-workshop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wmeints%2Feffective-llm-applications-workshop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wmeints%2Feffective-llm-applications-workshop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wmeints%2Feffective-llm-applications-workshop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wmeints","download_url":"https://codeload.github.com/wmeints/effective-llm-applications-workshop/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wmeints%2Feffective-llm-applications-workshop/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28784093,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-26T13:55:28.044Z","status":"ssl_error","status_checked_at":"2026-01-26T13:55:26.068Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["course","csharp","llm","semantic-kernel","teaching","workshop"],"created_at":"2026-01-26T18:11:09.436Z","updated_at":"2026-01-26T18:11:10.151Z","avatar_url":"https://github.com/wmeints.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Course: Building Effective LLM-Based Applications with Semantic Kernel\n\nWelcome to the source repository for the workshop \"Building Effective LLM-Based\nApplications with Semantic Kernel\". In this workshop we teach people how to build\nLLM-based applications with Semantic Kernel.\n\n---\n**NOTICE**  \nIf you're here because you're attending the workshop. Go straight to the website please!\nWebsite: https://wmeints.github.io/effective-llm-applications-workshop\n\n---\n\n## Why this workshop\n\nThis hands-on workshop transforms the theoretical knowledge from the book \n\"Building Effective LLM-Based Applications with Semantic Kernel\" into practical\nimplementation skills. While books provide comprehensive knowledge, workshops offer\nimmediate application and feedback. This workshop was created to:\n\n- Give developers direct, hands-on experience with LLM application patterns\n- Provide structured guidance through common implementation challenges\n- Create a collaborative learning environment where participants can share insights\n- Transform theoretical concepts into working code you can reference for future projects\n\n## Target audience\n\nThis workshop is designed for:\n\n- Software developers who want to integrate LLMs into enterprise applications\n- C# developers looking for practical examples beyond the Python-dominated tutorials\n- Technical architects designing LLM-powered solutions\n- Developers who learn best through hands-on implementation rather than theory alone\n\n**Important** The course materials focus on C# for now. We'll add detailed labs for\nPython and Java at a later date!\n\n## Major Learning Goals\n\nBy the end of this 3-hour workshop, participants will be able to:\n\n- Set up a Semantic Kernel environment - Configure the essential components for RAG applications\n- Process and embed documents - Transform documents into vector embeddings for retrieval\n- Implement vector search - Create efficient retrieval mechanisms for relevant content\n- Design effective RAG prompts - Craft prompts that properly utilize retrieved context\n- Build a complete RAG pipeline - Connect all components into a working domain-specific assistant\n\n## Prerequisites\n\nParticipants should have:\n\n- Working knowledge of C# programming\n- .NET SDK 9.0 or higher installed\n- Docker Desktop or similar containerization tool\n- Visual Studio Code or similar code editor\n- Azure CLI for working with Azure OpenAI\n- GitHub account to access workshop materials\n\n## Workshop Pacing\n\nThe workshop is structured as a compact 3-hour session focused exclusively on RAG implementation.\nThe first module will be more theoretical in nature while the other modules focus on hands-on labs:\n\n| Time      | Module                              | Description                                                           |\n| --------- | ----------------------------------- | --------------------------------------------------------------------- |\n| 0:00-0:45 | Fundamentals \u0026 Environment Setup    | Overview of LLMS, RAG architecture and configuring Semantic Kernel    |\n| 0:45-1:30 | Document Processing \u0026 Embeddings    | Implementing text splitting, embedding generation, and vector storage |\n| 1:30-2:45 | Context Integration                 | Creating prompts that effectively use retrieved information           |\n| 2:45-3:00 | Q\u0026A and Next Steps                  | Discussion of advanced techniques and resources for further learning  |\n\nEach module includes:\n\n- A brief conceptual explanation\n- Step-by-step labs to get hands-on experience\n- Working code examples to demonstrate the end results\n- Explanation of common pitfalls and solutions\n\n## Supplemental Resources for Facilitators\n\nTo prepare for facilitating this workshop:\n\n1. **Required Reading**:\n   - [Building Effective LLM-Based Applications with Semantic Kernel](https://leanpub.com/effective-llm-applications-with-semantic-kernel/) (focus on the RAG chapter)\n   - [Microsoft Semantic Kernel Documentation on Memory and Embeddings](https://learn.microsoft.com/en-us/semantic-kernel/memories/)\n\n2. **Environment Preparation**:\n   - Set up the [GitHub repository](https://github.com/wmeints/effective-llm-applications/) samples for RAG\n   - Prepare sample documents for embedding demonstrations (You can use [the raw book content](https://github.com/wmeints/effective-llm-applications) for this)\n   - Ensure you have API keys for OpenAI or Azure OpenAI embeddings and text generation\n\n3. **Discussion Preparation**:\n   - Prepare examples of effective vs. ineffective RAG implementations\n   - Review common challenges in text chunking and retrieval\n   - Be ready to discuss tradeoffs in chunk size, embedding models, and context window utilization\n\n4. **Additional Resources**:\n   - [Semantic Kernel Memory concepts](https://github.com/microsoft/semantic-kernel/tree/main/dotnet/samples/Concepts/Memory)\n   - [Azure Cognitive Search integration samples](https://github.com/Azure-Samples/azure-search-openai-demo-csharp)\n   - [OpenAI Cookbook RAG examples](https://github.com/openai/openai-cookbook/tree/main/examples/vector_databases)\n\n## Getting Started\n\n1. Navigate to the workshop website: https://wmeints.github.io/effective-llm-applications-workshop\n2. Follow the setup instructions on the website.\n\nFor questions or issues, please create an issue in the [GitHub repository](https://github.com/wmeints/effective-llm-applications/).\n\n## Working on the course materials\n\nThis course is being developed as an [Astro](https://astro.build) website. You can find the sources for the\ncourse guides in the [site](./site) directory. The lab content is located in [labs](./labs).\n\nPlease make sure to submit issues for things you want to see changed.\n\n---\n\nWorkshop materials based on the book \"Building Effective LLM-Based Applications with Semantic Kernel\" by Willem Meints.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwmeints%2Feffective-llm-applications-workshop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwmeints%2Feffective-llm-applications-workshop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwmeints%2Feffective-llm-applications-workshop/lists"}