Skip to content

Commit 4f46083

Browse files
authored
Update instructions and Core Gen Techniques solution
Update instructions and Core Gen Techniques solution
2 parents 279f6cb + 9a4494c commit 4f46083

80 files changed

Lines changed: 182 additions & 348 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/copilot-instructions.md

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33

44
## Project Purpose & Structure
55
- This repo is a hands-on .NET course for Generative AI, focused on real-world, runnable code and live coding.
6-
- Lessons are organized in numbered folders (e.g., `01-IntroToGenAI/`, `03-CoreGenerativeAITechniques/`), each with a `readme.md` and code in the root sample folder.
7-
- Key technologies: .NET 9+, Microsoft.Extensions.AI (MEAI), Microsoft Agent Framework, Azure OpenAI, Ollama (local models).
6+
- Lessons are organized in numbered folders (`01-IntroductionToGenerativeAI/` through `05-ResponsibleAI/`), each with a `readme.md` for documentation.
7+
- All code samples live in the centralized `samples/` directory, organized by category: `CoreSamples/`, `MAF/`, `AppsWithGenAI/`, `PracticalSamples/`.
8+
- Key technologies: .NET 10+, Microsoft.Extensions.AI (MEAI), Microsoft Agent Framework, Azure OpenAI, Ollama (local models).
89
- Multi-language support: see `translations/` for localized docs.
910

1011
## Architecture & Patterns
11-
- Each lesson is self-contained; (e.g., `05-AppCreatedWithGenAI/SpaceAINet/`) demonstrate full-stack AI integration.
12-
- Samples are created inside the sample folder for organization.
12+
- Each lesson folder contains documentation; code samples are in `samples/` (e.g., `samples/AppsWithGenAI/SpaceAINet/` demonstrates full-stack AI integration).
13+
- Samples are organized under `samples/` by category: `CoreSamples/`, `MAF/`, `AppsWithGenAI/`, `PracticalSamples/`.
1314
- AI model calls are always abstracted behind service classes (e.g., `SpaceAINet.GameActionProcessor`), enabling easy provider swapping and testability.
1415
- API keys and endpoints are never hardcoded—use user secrets or environment variables (see lesson READMEs for details).
1516
- For SpaceAINet and similar apps:
@@ -23,15 +24,15 @@
2324
- Ensure all code builds with `dotnet build` and passes tests with `dotnet test`
2425
- Verify formatting with `dotnet format --verify-no-changes` if linting is enabled
2526
- **Build & Run:**
26-
- Use standard .NET CLI: `dotnet build`, `dotnet run` from the relevant project folder (e.g., `cd 05-AppCreatedWithGenAI/SpaceAINet/SpaceAINet.Console`).
27+
- Use standard .NET CLI: `dotnet build`, `dotnet run` from the relevant project folder (e.g., `cd samples/AppsWithGenAI/SpaceAINet/SpaceAINet.Console`).
2728
- For local AI: ensure Ollama is running and the required model is pulled (e.g., `ollama pull phi4-mini`).
2829
- For Azure: set secrets via `dotnet user-secrets` or Codespaces secrets.
2930
- **Switching AI Providers:**
3031
- Most samples support toggling between local (Ollama) and cloud (Azure OpenAI) models at runtime (see app key bindings and README tables).
3132
- **Codespaces:**
3233
- Dev containers are pre-configured for .NET, Azure, and Ollama workflows. Choose the right container for your use case.
3334
- **Testing:**
34-
- Run sample apps in the lesson `src/` folders to verify model integration and workflow.
35+
- Run sample apps in the `samples/` directory to verify model integration and workflow.
3536

3637
## Code Standards & Best Practices
3738
- Follow C# and .NET best practices (naming conventions, async/await patterns, nullable reference types)
@@ -49,7 +50,7 @@
4950
- AI integration is always via service abstraction (never direct model calls in UI or game logic).
5051
- Use key bindings in sample apps to toggle AI modes, save screenshots, and display FPS (see app README for details).
5152
- For translations, update the corresponding `translations/<lang>/README.md`.
52-
- Maintain existing code structure and organization—place new samples in the correct lesson folder
53+
- Maintain existing code structure and organization—place new samples in the correct `samples/` subfolder
5354

5455
## Integration Points & External Dependencies
5556
- **Azure OpenAI:** Requires endpoint, model name, and API key (see `01-IntroductionToGenerativeAI/setup-azure-openai.md`).
@@ -58,9 +59,12 @@
5859

5960
## Key Files & Directories
6061
- `README.md` (root): Course overview, lesson map, and links to translations.
61-
- `01-IntroToGenAI/`, `02-SetupDevEnvironment/`, ...: Lesson folders with guides and code.
62-
- `05-AppCreatedWithGenAI/SpaceAINet/`: Example of a full AI-powered .NET app (see `README.md` inside for architecture and usage).
63-
- `samples/`: Contains all sample applications.
62+
- `01-IntroductionToGenerativeAI/` through `05-ResponsibleAI/`: Lesson folders with documentation and guides.
63+
- `samples/CoreSamples/`: Core technique samples (chat, vision, RAG, functions, etc.).
64+
- `samples/MAF/`: Microsoft Agent Framework samples (25+ projects).
65+
- `samples/AppsWithGenAI/SpaceAINet/`: AI-powered Space Battle game (see `README.md` inside for architecture).
66+
- `samples/AppsWithGenAI/HFMCP.GenImage/`: Image generation Aspire app.
67+
- `samples/PracticalSamples/`: Aspire MCP sample.
6468
- `translations/`: Localized documentation.
6569
- `CONTRIBUTING.MD`: Contribution and PR guidelines.
6670

@@ -71,7 +75,7 @@
7175
- `dotnet user-secrets set "AZURE_OPENAI_MODEL" "<your-model-name>"`
7276
- `dotnet user-secrets set "AZURE_OPENAI_APIKEY" "<your-api-key>"`
7377
3. Build & run:
74-
- `cd 05-AppCreatedWithGenAI/SpaceAINet/SpaceAINet.Console`
78+
- `cd samples/AppsWithGenAI/SpaceAINet/SpaceAINet.Console`
7579
- `dotnet build && dotnet run`
7680
4. Use key bindings to toggle AI modes, save screenshots, and display FPS during gameplay.
7781

.github/workflows/build-validation.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,10 @@ jobs:
3636
- name: Checkout code
3737
uses: actions/checkout@v4
3838

39-
- name: Setup .NET 9.0
39+
- name: Setup .NET 10.0
4040
uses: actions/setup-dotnet@v4
4141
with:
42-
dotnet-version: '9.0.x'
42+
dotnet-version: '10.0.x'
4343

4444
- name: Restore dependencies for ${{ matrix.solution.name }}
4545
run: dotnet restore "${{ matrix.solution.path }}"

.github/workflows/copilot-setup-steps.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
- name: Checkout code
2121
uses: actions/checkout@v4
2222

23-
- name: Set up .NET 9
23+
- name: Set up .NET 10
2424
uses: actions/setup-dotnet@v4
2525
with:
26-
dotnet-version: '9.0.x'
26+
dotnet-version: '10.0.x'

.squad/agents/dozer/history.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Project Context
44
- **Project:** Generative AI for Beginners .NET — hands-on .NET course for GenAI
5-
- **Stack:** .NET 9+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
5+
- **Stack:** .NET 10+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
66
- **User:** Bruno Capuano
77
- **Owned scope:** NuGet package upgrades, .NET framework upgrades, build verification across all projects
88

.squad/agents/morpheus/history.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Project Context
44
- **Project:** Generative AI for Beginners .NET — hands-on .NET course for GenAI
5-
- **Stack:** .NET 9+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
5+
- **Stack:** .NET 10+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
66
- **User:** Bruno Capuano
77

88
## Learnings

.squad/agents/neo/charter.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Core .NET development — building samples, implementations, and code across the
55

66
## Boundaries
77
- Owns C#/.NET code across all lesson folders and samples/
8-
- Follows .NET 9+ best practices, async/await, nullable reference types
8+
- Follows .NET 10+ best practices, async/await, nullable reference types
99
- Uses Microsoft.Extensions.AI and Microsoft Agent Framework patterns
1010
- Never hardcodes API keys — uses user secrets or environment variables
1111

.squad/agents/neo/history.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Project Context
44
- **Project:** Generative AI for Beginners .NET — hands-on .NET course for GenAI
5-
- **Stack:** .NET 9+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
5+
- **Stack:** .NET 10+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
66
- **User:** Bruno Capuano
77

88
## Learnings

.squad/agents/niobe/history.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Project Context
44
- **Project:** Generative AI for Beginners .NET — hands-on .NET course for GenAI
5-
- **Stack:** .NET 9+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
5+
- **Stack:** .NET 10+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
66
- **User:** Bruno Capuano
77
- **Owned scope:** Educational content strategy, AI/GenAI trend analysis, Microsoft technology scouting
88
- **Course structure:** 10 lesson folders (01-10), samples/ directory, translations/ for 8 languages

.squad/agents/oracle/history.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Project Context
44
- **Project:** Generative AI for Beginners .NET — hands-on .NET course for GenAI
5-
- **Stack:** .NET 9+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
5+
- **Stack:** .NET 10+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
66
- **User:** Bruno Capuano
77
- **Owned files:** Root README.md (What's New section), 10-WhatsNew/readme.md
88

.squad/agents/tank/history.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Project Context
44
- **Project:** Generative AI for Beginners .NET — hands-on .NET course for GenAI
5-
- **Stack:** .NET 9+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
5+
- **Stack:** .NET 10+, C#, MEAI, Semantic Kernel, Azure OpenAI, Ollama
66
- **User:** Bruno Capuano
77

88
## Learnings

0 commit comments

Comments
 (0)