mirror of
https://github.com/microsoft/semantic-kernel.git
synced 2026-10-12 02:19:06 +00:00
### Motivation and Context <!-- Thank you for your contribution to the semantic-kernel repo! Please help reviewers and future users, providing the following information: 1. Why is this change required? 2. What problem does it solve? 3. What scenario does it contribute to? 4. If it fixes an open issue, please link to the issue here. --> Initial Agent Framework. Incudes: - All critical abstractions - ChatCompletionAgent - All new projects / all marked with experimental attributes - New `AgentSyntaxExamples` ### NOTE - NOT PUBLISHING NUGET **Test Coverage (blocks / lines):**  ### Description <!-- Describe your changes, the overall approach, the underlying design. These notes will help understanding how your code works. Thanks! --> Shouldn't be any surprises. Let's take personal notes on naming preference as there hasn't been finality in decision process. A final refactor-rename and comment update at the end should be rapid (I'd rather do renaming/organziation once than multiple times). I'm going to stack PR's behind this, so in the interest of progress... ### Outstanding Tasks - In Order (each a future PR) - [ ] AgentChat (our "GroupChat") - [ ] Assistant-as-a-Plugin - [ ] OpenAIAssistantAgent - [ ] OpenAIAssistantAgent Citiation Content - [ ] Port AutoGen examples - [ ] Streaming - [ ] YAML Templates ### Contribution Checklist <!-- Before submitting this PR, please make sure: --> - [x] The code builds clean without any errors or warnings - [x] The PR follows the [SK Contribution Guidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md) and the [pre-submission formatting script](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts) raises no violations - [x] All unit tests pass, and I have added new tests where possible - [x] I didn't break anyone 😄
3.4 KiB
3.4 KiB
Experiments
The following capabilities are marked experimental in the .NET SDK. Once the APIs for these features are stable, the experimental attribute will be removed. In the meantime, these features are subject to change.
You can use the following diagnostic IDs to ignore warnings or errors for a particular experimental feature. For example, to ignore warnings for the embedding services, add SKEXP0001 to your list of ignored warnings in your .NET project file as well as the ID for the embedding service you want to use. For example:
<PropertyGroup>
<NoWarn>SKEXP0001,SKEXP0010</NoWarn>
</PropertyGroup>
Experimental Feature Codes
| SKEXP | Experimental Features Category |
|---|---|
| SKEXP0001 | Semantic Kernel core features |
| SKEXP0010 | OpenAI and Azure OpenAI services |
| SKEXP0020 | Memory connectors |
| SKEXP0040 | Function types |
| SKEXP0050 | Out-of-the-box plugins |
| SKEXP0060 | Planners |
| SKEXP0070 | AI connectors |
| SKEXP0100 | Advanced Semantic Kernel features |
| SKEXP0110 | Semantic Kernel Agents |
Experimental Features Tracking
| SKEXP | Features | API docs | Learn docs | Samples | Issues | Implementations |
|---|---|---|---|---|---|---|
| SKEXP0001 | Embedding services | |||||
| SKEXP0001 | Image services | |||||
| SKEXP0001 | Memory connectors | |||||
| SKEXP0001 | Kernel filters | |||||
| SKEXP0001 | Audio services | |||||
| SKEXP0010 | Azure OpenAI with your data service | |||||
| SKEXP0010 | OpenAI embedding service | |||||
| SKEXP0010 | OpenAI image service | |||||
| SKEXP0010 | OpenAI parameters | |||||
| SKEXP0010 | OpenAI chat history extension | |||||
| SKEXP0010 | OpenAI file service | |||||
| SKEXP0020 | Azure AI Search memory connector | |||||
| SKEXP0020 | Chroma memory connector | |||||
| SKEXP0020 | DuckDB memory connector | |||||
| SKEXP0020 | Kusto memory connector | |||||
| SKEXP0020 | Milvus memory connector | |||||
| SKEXP0020 | Qdrant memory connector | |||||
| SKEXP0020 | Redis memory connector | |||||
| SKEXP0020 | Sqlite memory connector | |||||
| SKEXP0020 | Weaviate memory connector | |||||
| SKEXP0020 | MongoDB memory connector | |||||
| SKEXP0020 | Pinecone memory connector | |||||
| SKEXP0020 | Postgres memory connector | |||||
| SKEXP0040 | GRPC functions | |||||
| SKEXP0040 | Markdown functions | |||||
| SKEXP0040 | OpenAPI functions | |||||
| SKEXP0040 | OpenAPI function extensions | |||||
| SKEXP0050 | Core plugins | |||||
| SKEXP0050 | Document plugins | |||||
| SKEXP0050 | Memory plugins | |||||
| SKEXP0050 | Microsoft 365 plugins | |||||
| SKEXP0050 | Web plugins | |||||
| SKEXP0050 | Text chunker plugin | |||||
| SKEXP0060 | Handlebars planner | |||||
| SKEXP0060 | OpenAI Stepwise planner | |||||
| SKEXP0070 | Ollama AI connector | |||||
| SKEXP0070 | Gemini AI connector | |||||
| SKEXP0070 | Mistral AI connector | |||||
| SKEXP0070 | ONNX AI connector | |||||
| SKEXP0070 | Hugging Face AI connector | |||||
| SKEXP0101 | Experiment with Assistants | |||||
| SKEXP0101 | Experiment with Flow Orchestration | |||||
| SKEXP0110 | Agent Framework |