Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Sémantické plány jádra poskytují podporu pro následující jazyky:
- jazyk C#
- Python
- Java
I když je celková architektura jádra konzistentní ve všech jazycích, zajistili jsme, aby sada SDK pro každý jazyk používala běžná paradigmata a styly, aby se cítila jako nativní a snadno použitelná.
Balíčky jazyka C#
V jazyce C# existuje několik balíčků, které vám pomůžou zajistit, že potřebujete importovat jenom funkce, které potřebujete pro svůj projekt. Následující tabulka uvádí dostupné balíčky v jazyce C#.
| Název balíčku | Popis |
|---|---|
Microsoft.SemanticKernel |
Hlavní balíček, který obsahuje všechno, co chcete začít |
Microsoft.SemanticKernel.Core |
Základní balíček, který poskytuje implementace pro Microsoft.SemanticKernel.Abstractions |
Microsoft.SemanticKernel.Abstractions |
Základní abstrakce pro sémantické jádro |
Microsoft.SemanticKernel.Connectors.Amazon |
Konektor AI pro Amazon AI |
Microsoft.SemanticKernel.Connectors.AzureAIInference |
Konektor AI pro odvozování Azure AI |
Microsoft.SemanticKernel.Connectors.AzureOpenAI |
Konektor AI pro Azure OpenAI |
Microsoft.SemanticKernel.Connectors.Google |
Konektor AI pro modely Google (např. Gemini) |
Microsoft.SemanticKernel.Connectors.HuggingFace |
Konektor AI pro modely Hugging Face |
Microsoft.SemanticKernel.Connectors.MistralAI |
Konektor AI pro modely Mistral AI |
Microsoft.SemanticKernel.Connectors.Ollama |
Konektor AI pro Ollama |
Microsoft.SemanticKernel.Connectors.Onnx |
Konektor AI pro Onnx |
Microsoft.SemanticKernel.Connectors.OpenAI |
Konektor AI pro OpenAI |
Microsoft.SemanticKernel.Connectors.AzureAISearch |
Konektor pro vektorové úložiště pro Azure AI Search |
Microsoft.SemanticKernel.Connectors.CosmosMongoDB |
Konektor pro vektorové úložiště pro Azure CosmosDB MongoDB |
Microsoft.SemanticKernel.Connectors.CosmosNoSql |
Konektor pro vektorové úložiště pro Azure CosmosDB NoSQL |
Microsoft.SemanticKernel.Connectors.MongoDB |
Konektor pro vektorové úložiště pro MongoDB |
Microsoft.SemanticKernel.Connectors.Pinecone |
Spojnice vektorového úložiště pro Pinecone |
Microsoft.SemanticKernel.Connectors.Qdrant |
Konektor úložiště vektorů pro Qdrant |
Microsoft.SemanticKernel.Connectors.Redis |
Konektor úložiště vektorů pro Redis |
Microsoft.SemanticKernel.Connectors.SqliteVec |
Konektor pro vektorové úložiště pro Sqlite |
Microsoft.SemanticKernel.Connectors.Weaviate |
Spojnice vektorového úložiště pro weaviate |
Microsoft.SemanticKernel.Plugins.OpenApi (Experimentální) |
Umožňuje načítání modulů plug-in ze specifikací OpenAPI. |
Microsoft.SemanticKernel.PromptTemplates.Handlebars |
Povolí použití šablon úchytů pro výzvy. |
Microsoft.SemanticKernel.Yaml |
Poskytuje podporu pro serializaci výzev pomocí souborů YAML. |
Microsoft.SemanticKernel.Prompty |
Poskytuje podporu pro serializaci výzev pomocí souborů prompty. |
Microsoft.SemanticKernel.Agents.Abstractions |
Poskytuje abstrakce pro vytváření agentů. |
Microsoft.SemanticKernel.Agents.OpenAI |
Poskytuje podporu pro agenty rozhraní API pomocníka. |
K instalaci některého z těchto balíčků můžete použít následující příkaz:
dotnet add package <package-name>
Balíčky Pythonu
V Pythonu je jeden balíček, který obsahuje vše, co potřebujete, abyste mohli začít se sémantickým jádrem. K instalaci balíčku můžete použít následující příkaz:
pip install semantic-kernel
Na PyPI v rámci Provides-Extra dalších extra, které můžete nainstalovat, jsou uvedeny také a při použití, které nainstaluje balíčky potřebné pro použití SKU s konkrétním konektorem nebo službou, můžete je nainstalovat se syntaxí hranatých závorek, například:
pip install semantic-kernel[azure]
Tím se nainstaluje sémantické jádro a také konkrétní otestované verze: azure-ai-inference, azure-search-documentsazure-core, , azure-identityazure-cosmosa msgraph-sdk (a všechny závislosti těchto balíčků). Podobně se nainstaluje hugging_facetransformers a sentence-transformers.
Balíčky Java
Pro Javu má sémantické jádro následující balíčky; všechny jsou pod ID com.microsoft.semantic-kernelskupiny a lze je importovat z mavenu.
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-api</artifactId>
</dependency>
Poskytuje se kusovník, který lze použít k definování verzí všech sémantických balíčků jádra.
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-bom</artifactId>
<version>${semantickernel.version}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
-
semantickernel-bom– Kusovník projektu Maven, který lze použít k definování verzí všech balíčků sémantického jádra. -
semantickernel-api– Balíček, který definuje základní veřejné rozhraní API pro sémantické jádro projektu Maven. -
semantickernel-aiservices-openai–Poskytuje konektor, který lze použít k interakci s rozhraním OpenAI API.
Níže je příklad XML POM pro jednoduchý projekt, který používá OpenAI.
<project>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-bom</artifactId>
<version>${semantickernel.version}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-api</artifactId>
</dependency>
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-connectors-ai-openai</artifactId>
</dependency>
</dependencies>
</project>
Dostupné funkce v každé sadě SDK
Následující tabulky ukazují, které funkce jsou dostupné v jednotlivých jazycích. Symbol 🔄 označuje, že je funkce částečně implementovaná, další podrobnosti najdete v přidruženém sloupci poznámek. Symbol ❌ označuje, že tato funkce ještě není v tomto jazyce dostupná. Pokud chcete vidět funkci implementovanou v jazyce, zvažte příspěvek k projektu nebo otevření problému.
Základní funkce
| Služby | jazyk C# | Python | Java | Notes |
|---|---|---|---|---|
| Výzvy | ✅ | ✅ | ✅ | Úplný seznam podporovaných formátů šablon a serializace najdete v následujících tabulkách. |
| Nativní funkce a moduly plug-in | ✅ | ✅ | ✅ | |
| Moduly plug-in OpenAPI | ✅ | ✅ | ✅ | Java obsahuje ukázku, jak načíst moduly plug-in OpenAPI. |
| Automatické volání funkcí | ✅ | ✅ | ✅ | |
| Otevření protokolů telemetrie | ✅ | ✅ | ❌ | |
| Háky a filtry | ✅ | ✅ | ✅ |
Formáty šablon výzvy
Při vytváření výzev poskytuje sémantické jádro řadu jazyků šablon, které umožňují vkládat proměnné a volat funkce. Následující tabulka ukazuje, které jazyky šablon jsou podporovány v jednotlivých jazycích.
| Formáty | jazyk C# | Python | Java | Notes |
|---|---|---|---|---|
| Sémantický jazyk šablony jádra | ✅ | ✅ | ✅ | |
| Handlebars | ✅ | ✅ | ✅ | |
| Liquid | ✅ | ❌ | ❌ | |
| Jinja2 | ❌ | ✅ | ❌ |
Formáty serializace výzvy
Po vytvoření výzvy ji můžete serializovat, aby se mohly ukládat nebo sdílet napříč týmy. Následující tabulka uvádí, které formáty serializace jsou podporovány v jednotlivých jazycích.
| Formáty | jazyk C# | Python | Java | Notes |
|---|---|---|---|---|
| YAML | ✅ | ✅ | ✅ | |
| Výzva | ✅ | ❌ | ❌ |
Způsoby poskytování služeb AI
| Služby | jazyk C# | Python | Java | Notes |
|---|---|---|---|---|
| Generování textu | ✅ | ✅ | ✅ | Příklad: Text-Davinci-003 |
| Dokončení chatu | ✅ | ✅ | ✅ | Příklad: GPT4, Chat-GPT |
| Vkládání textu (experimentální) | ✅ | ✅ | ✅ | Příklad: Text-Embeddings-Ada-002 |
| Text na obrázek (experimentální) | ✅ | ✅ | ❌ | Příklad: Dall-E |
| Obrázek k textu (experimentální) | ✅ | ❌ | ❌ | Příklad: Pix2 – struktura |
| Text na zvuk (experimentální) | ✅ | ✅ | ❌ | Příklad: Převod textu na řeč |
| Zvuk na text (experimentální) | ✅ | ✅ | ❌ | Příklad: Šeptej |
Konektory služby AI
| Koncové body | jazyk C# | Python | Java | Notes |
|---|---|---|---|---|
| Amazon Bedrock | ✅ | ✅ | ❌ | |
| Anthropic | ✅ | ✅ | ❌ | |
| Inferenční služba Azure AI | ✅ | ✅ | ❌ | |
| Azure OpenAI | ✅ | ✅ | ✅ | |
| ✅ | ✅ | ✅ | ||
| Rozhraní API pro odvozování tváří | ✅ | ✅ | ❌ | |
| Mistral | ✅ | ✅ | ❌ | |
| Ollama | ✅ | ✅ | ❌ | |
| ONNX | ✅ | ✅ | ❌ | |
| OpenAI | ✅ | ✅ | ✅ | |
| Další koncové body, které podporují rozhraní OPENAI API | ✅ | ✅ | ✅ | Zahrnuje LLM Studio atd. |
Konektory služby Vector Store (experimentální)
Výstraha
Funkce sémantického úložiště vektorů jádra je ve verzi Preview a vylepšení, která vyžadují zásadní změny, se můžou vyskytovat za omezených okolností před vydáním.
Seznam předepisovaných konektorů vektorového úložiště a podporu jazyka pro každý z nich najdete v části Odsadové spojnice.
Konektory úložiště paměti (starší verze)
Důležité
Konektory úložiště paměti jsou starší verze a byly nahrazeny konektory služby Vector Store. Další informace naleznete v tématu Starší úložiště paměti.
| Konektory paměti | jazyk C# | Python | Java | Notes |
|---|---|---|---|---|
| Azure AI Vyhledávač | ✅ | ✅ | ✅ | |
| Sytost barvy | ✅ | ✅ | ❌ | |
| DuckDB | ✅ | ❌ | ❌ | |
| Milvus | ✅ | ✅ | ❌ | |
| Pinecone | ✅ | ✅ | ❌ | |
| Postgres | ✅ | ✅ | ❌ | |
| Qdrant | ✅ | ✅ | ❌ | |
| Redis | ✅ | ✅ | ❌ | |
| Sqlite | ✅ | ❌ | 🔄 | |
| Weaviate | ✅ | ✅ | ❌ |