Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Semantik Çekirdek, aşağıdaki dillere destek sağlamayı planlıyor:
- C#
- Python
- Java
Çekirdeğin genel mimarisi tüm dillerde tutarlı olsa da, yerel ve kullanımı kolay hissettirmek için her dil için SDK'nın her dilde ortak paradigmalar ve stiller izlediğinden emin olduk.
C# paketleri
C# dilinde, yalnızca projeniz için ihtiyacınız olan işlevselliği içeri aktarmanız gerektiğinden emin olmanıza yardımcı olacak birkaç paket vardır. Aşağıdaki tabloda C# dilindeki kullanılabilir paketler gösterilmektedir.
| Paket adı | Açıklama |
|---|---|
Microsoft.SemanticKernel |
Başlamak için her şeyi içeren ana paket |
Microsoft.SemanticKernel.Core |
için uygulamalar sağlayan çekirdek paket Microsoft.SemanticKernel.Abstractions |
Microsoft.SemanticKernel.Abstractions |
Anlam Çekirdeği için temel soyutlamalar |
Microsoft.SemanticKernel.Connectors.Amazon |
Amazon AI için yapay zeka bağlayıcısı |
Microsoft.SemanticKernel.Connectors.AzureAIInference |
Azure AI Çıkarımı için yapay zeka bağlayıcısı |
Microsoft.SemanticKernel.Connectors.AzureOpenAI |
Azure OpenAI için yapay zeka bağlayıcısı |
Microsoft.SemanticKernel.Connectors.Google |
Google modelleri için yapay zeka bağlayıcısı (örn. gemini) |
Microsoft.SemanticKernel.Connectors.HuggingFace |
Yüz Tanıma modellerini kucaklama için yapay zeka bağlayıcısı |
Microsoft.SemanticKernel.Connectors.MistralAI |
Mistral AI modelleri için yapay zeka bağlayıcısı |
Microsoft.SemanticKernel.Connectors.Ollama |
Ollama için yapay zeka bağlayıcısı |
Microsoft.SemanticKernel.Connectors.Onnx |
Onnx için yapay zeka bağlayıcısı |
Microsoft.SemanticKernel.Connectors.OpenAI |
OpenAI için yapay zeka bağlayıcısı |
Microsoft.SemanticKernel.Connectors.AzureAISearch |
Azure AI Search için vektör deposu bağlayıcısı |
Microsoft.SemanticKernel.Connectors.CosmosMongoDB |
Azure CosmosDB MongoDB için vektör deposu bağlayıcısı |
Microsoft.SemanticKernel.Connectors.CosmosNoSql |
Azure CosmosDB NoSQL için vektör deposu bağlayıcısı |
Microsoft.SemanticKernel.Connectors.MongoDB |
MongoDB için vektör deposu bağlayıcısı |
Microsoft.SemanticKernel.Connectors.Pinecone |
Pinecone için vektör deposu bağlayıcısı |
Microsoft.SemanticKernel.Connectors.Qdrant |
Qdrant için vektör deposu bağlayıcısı |
Microsoft.SemanticKernel.Connectors.Redis |
Redis için vektör deposu bağlayıcısı |
Microsoft.SemanticKernel.Connectors.SqliteVec |
Sqlite için vektör deposu bağlayıcısı |
Microsoft.SemanticKernel.Connectors.Weaviate |
Weaviate için vektör deposu bağlayıcısı |
Microsoft.SemanticKernel.Plugins.OpenApi (Deneysel) |
OpenAPI belirtimlerinden eklentilerin yüklenmesini etkinleştirir |
Microsoft.SemanticKernel.PromptTemplates.Handlebars |
İstemler için Handlebars şablonlarının kullanımını etkinleştirir |
Microsoft.SemanticKernel.Yaml |
YAML dosyalarını kullanarak istemleri seri hale getirme desteği sağlar |
Microsoft.SemanticKernel.Prompty |
Prompty dosyalarını kullanarak istemleri seri hale getirme desteği sağlar |
Microsoft.SemanticKernel.Agents.Abstractions |
Aracı oluşturmaya yönelik soyutlamalar sağlar |
Microsoft.SemanticKernel.Agents.OpenAI |
Yardımcı API aracıları için destek sağlar |
Bu paketlerden herhangi birini yüklemek için aşağıdaki komutu kullanabilirsiniz:
dotnet add package <package-name>
Python paketleri
Python'da Anlam Çekirdeği'ne başlamak için ihtiyacınız olan her şeyi içeren tek bir paket vardır. Paketi yüklemek için aşağıdaki komutu kullanabilirsiniz:
pip install semantic-kernel
PyPI'da Provides-Extra yükleyebileceğiniz ek öğeler de listelenir ve SK'yi belirli bir bağlayıcı veya hizmetle kullanmak için gereken paketleri yükleyecek şekilde kullanıldığında, bunları örneğin köşeli ayraç söz dizimiyle yükleyebilirsiniz:
pip install semantic-kernel[azure]
Bu, Anlam Çekirdeği'nin yanı sıra, , azure-ai-inferenceazure-search-documents ve azure-core (ve bu paketlerin azure-identityazure-cosmosmsgraph-sdktüm bağımlılıkları) için test edilmiş belirli sürümleri yükler. Benzer şekilde, ek ve hugging_face yüklenir transformerssentence-transformers.
Java paketleri
Java için Anlam Çekirdeği aşağıdaki paketlere sahiptir; tümü grup kimliği com.microsoft.semantic-kernelaltındadır ve maven'dan içeri aktarılabilir.
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-api</artifactId>
</dependency>
Tüm AnlamSal Çekirdek paketlerinin sürümlerini tanımlamak için kullanılabilecek bir bom sağlanır.
<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– Tüm AnlamSal Çekirdek paketlerinin sürümlerini tanımlamak için kullanılabilecek bir Maven proje ürün reçetesi. -
semantickernel-api– Maven projesi için Anlam Çekirdeği için çekirdek genel API'sini tanımlayan paket. -
semantickernel-aiservices-openai–OpenAI API'siyle etkileşime geçmek için kullanılabilecek bir bağlayıcı sağlar.
Aşağıda OpenAI kullanan basit bir proje için örnek bir POM XML'i verilmiştir.
<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>
Her SDK'daki kullanılabilir özellikler
Aşağıdaki tablolarda her dilde hangi özelliklerin kullanılabildiği gösterilmektedir. 🔄 Simgesi özelliğin kısmen uygulandığını gösterir. Daha fazla ayrıntı için lütfen ilişkili not sütununa bakın. ❌ Simgesi özelliğin henüz bu dilde kullanılamadığını gösterir. Bir özelliğin bir dilde uygulandığını görmek istiyorsanız, lütfen projeye katkıda bulunmayı veya bir sorun açmayı göz önünde bulundurun.
Temel özellikler
| Hizmetler | C# | Python | Java | Notlar |
|---|---|---|---|---|
| İstemler | ✅ | ✅ | ✅ | Desteklenen şablon ve serileştirme biçimlerinin tam listesini görmek için aşağıdaki tablolara bakın |
| Yerel işlevler ve eklentiler | ✅ | ✅ | ✅ | |
| OpenAPI eklentileri | ✅ | ✅ | ✅ | Java'da OpenAPI eklentilerinin nasıl yüklendiğini gösteren bir örnek vardır |
| Otomatik işlev çağrısı | ✅ | ✅ | ✅ | |
| Telemetri günlüklerini açma | ✅ | ✅ | ❌ | |
| Kancalar ve filtreler | ✅ | ✅ | ✅ |
Şablon biçimlerini iste
Komut istemleri yazarken Anlam Çekirdeği, değişkenleri eklemenizi ve işlevleri çağırmanızı sağlayan çeşitli şablon dilleri sağlar. Aşağıdaki tabloda, her dilde hangi şablon dillerinin desteklendiği gösterilmektedir.
| Biçimler | C# | Python | Java | Notlar |
|---|---|---|---|---|
| Semantik Çekirdek şablon dili | ✅ | ✅ | ✅ | |
| Gidonlar | ✅ | ✅ | ✅ | |
| Liquid | ✅ | ❌ | ❌ | |
| Jinja2 | ❌ | ✅ | ❌ |
İstem serileştirme biçimleri
İstemi oluşturduktan sonra, ekipler arasında depolanabilmesi veya paylaşılabilmesi için seri hale getirebilirsiniz. Aşağıdaki tabloda her dilde hangi serileştirme biçimlerinin desteklendiği gösterilmektedir.
| Biçimler | C# | Python | Java | Notlar |
|---|---|---|---|---|
| YAML | ✅ | ✅ | ✅ | |
| İstem | ✅ | ❌ | ❌ |
AI Hizmetleri Modaliteleri
| Hizmetler | C# | Python | Java | Notlar |
|---|---|---|---|---|
| Metin Oluşturma | ✅ | ✅ | ✅ | Örnek: Text-Davinci-003 |
| Sohbet Tamamlama | ✅ | ✅ | ✅ | Örnek: GPT4, Chat-GPT |
| Metin Ekleme (Deneysel) | ✅ | ✅ | ✅ | Örnek: Text-Embeddings-Ada-002 |
| Metinden Görüntüye (Deneysel) | ✅ | ✅ | ❌ | Örnek: Dall-E |
| Görüntüden Metne (Deneysel) | ✅ | ❌ | ❌ | Örnek: Pix2 Yapısı |
| Metinden Sese (Deneysel) | ✅ | ✅ | ❌ | Örnek: Metin okuma |
| Ses-Metin (Deneysel) | ✅ | ✅ | ❌ | Örnek: Fısıltı |
Yapay Zeka Hizmeti Bağlayıcıları
| Uç Noktalar | C# | Python | Java | Notlar |
|---|---|---|---|---|
| Amazon Bedrock | ✅ | ✅ | ❌ | |
| Antropik | ✅ | ✅ | ❌ | |
| Azure AI Sonuç Çıkarımı | ✅ | ✅ | ❌ | |
| Azure OpenAI | ✅ | ✅ | ✅ | |
| ✅ | ✅ | ✅ | ||
| Yüz Çıkarımı API'sinde Sarılma | ✅ | ✅ | ❌ | |
| Mistral rüzgarı | ✅ | ✅ | ❌ | |
| Ollama | ✅ | ✅ | ❌ | |
| ONNX | ✅ | ✅ | ❌ | |
| OpenAI | ✅ | ✅ | ✅ | |
| OpenAI API'lerini destekleyen diğer uç noktalar | ✅ | ✅ | ✅ | LLM Studio vb. içerir. |
Vektör Deposu Bağlayıcıları (Deneysel)
Uyarı
Semantik Çekirdek Vektör Deposu işlevselliği önizleme aşamasındadır ve köklü değişiklikler gerektiren iyileştirmeler, sürümden önce sınırlı durumlarda yine de gerçekleşebilir.
Hazır vektör deposu bağlayıcılarının listesi ve her biri için dil desteği için hazır bağlayıcılara bakın.
Bellek Deposu Bağlayıcıları (Eski)
Önemli
Bellek Deposu bağlayıcıları eskidir ve Vektör Deposu bağlayıcılarıyla değiştirilmiştir. Daha fazla bilgi için bkz. Eski Bellek Depoları.
| Bellek Bağlayıcıları | C# | Python | Java | Notlar |
|---|---|---|---|---|
| Azure Yapay Zeka Arama | ✅ | ✅ | ✅ | |
| Chroma | ✅ | ✅ | ❌ | |
| DuckDB | ✅ | ❌ | ❌ | |
| Milvus | ✅ | ✅ | ❌ | |
| Pinecone | ✅ | ✅ | ❌ | |
| Postgres | ✅ | ✅ | ❌ | |
| Qdrant | ✅ | ✅ | ❌ | |
| Redis | ✅ | ✅ | ❌ | |
| Sqlite | ✅ | ❌ | 🔄 | |
| Ağırlaştır | ✅ | ✅ | ❌ |