Tüm açık kaynak paketler
Yapay ZekaSwift

SwiftIntelligence

Uygulamanızın metinleri için cihaz üzerinde arama, cevap ve kişisel veri maskeleme; Apple framework'leri üzerine kurulu.

8YıldızSon Sürüm: v2.0.0Güncellendi: 15 Ekim 2026
Platformlar:iOS 18macOS 15

Lisans: MIT

iOS veya macOS uygulamasındaki metni cihaz üzerinde aranabilir ve sorulabilir hale getiren bir Swift paketi. Dokümanlar, onları parçalara bölen, istenirse maskeleyen, embedding'e çeviren ve indeksleyen bir KnowledgeBase actor'üne eklenir; arama BM25 ve vektör sıralamalarını reciprocal rank fusion ile birleştirir; iOS 26 ve macOS 26'da Apple'ın cihaz üstü modeli en uygun pasajlardan kaynak göstererek cevap verir. NaturalLanguage, Accelerate ve Foundation Models üzerine kurulu, bağımlılığı yok.

Özellikler

  • Hibrit arama: her pasaj hem kelimeleriyle (BM25) hem vektör olarak indekslenir, iki sıralama reciprocal rank fusion ile birleştirilir
  • Kaynaklı cevaplar: answer(_:) Apple'ın cihaz üstü modelinden yalnız en uygun pasajlardan cevap vermesini ve onlara atıf yapmasını ister; groundedPrompt(for:) aynı prompt'u başka modeller için üretir
  • Sekiz tür kişisel veri için geri çevrilebilir maskeleme; kart numaraları ve IBAN'lar kontrol basamağından geçmek zorunda, eşleştirme metnin katlanmış bir kopyasında yapılır
  • Üç embedder (hashing, Apple sentence, Apple contextual) ya da TextEmbedder protokolüyle kendi modeliniz
  • Kaydet ve geri yükle: maskelenmiş pasajlar ve vektörleri tek dosyada; yüklemede embedder ve format sürümü kontrol edilir
  • Metin analizi: TextAnalyzer ile dil, duygu, isimler, anahtar kelimeler ve cümleler

Hızlı Başlangıç

swift
1let knowledge = KnowledgeBase()
2try await knowledge.add("You can return any item within 30 days of delivery for a full refund.", id: "returns")
3try await knowledge.add("Orders ship within two business days; delivery takes three to five days.", id: "shipping")
4try await knowledge.add("Every laptop comes with a two-year warranty against defects.", id: "warranty")
5 
6let results = try await knowledge.search("How do I return an item for a refund?")
7print(results.first?.documentID ?? "nothing found") // returns
8print(results.first?.text ?? "") // You can return any item within 30 days …

Kurulum

Swift Package Manager

swift
1dependencies: [
2 .package(url: "https://github.com/muhittincamdali/SwiftIntelligence.git", from: "2.0.0")
3],
4targets: [
5 .target(name: "YourApp", dependencies: [
6 .product(name: "SwiftIntelligence", package: "SwiftIntelligence")
7 ])
8]

Xcode

text
1https://github.com/muhittincamdali/SwiftIntelligence.git

Ekran Görüntüleri

KnowledgeDemo arama ekranı, iPhone simülatörü, açık tema
KnowledgeDemo arama ekranı, iPhone simülatörü, koyu tema
KnowledgeDemo soru ekranı, cihaz üstü modelin cevabıyla, açık tema
KnowledgeDemo soru ekranı, cihaz üstü modelin cevabıyla, koyu tema
KnowledgeDemo maskeleme ekranı, iPhone simülatörü, açık tema
KnowledgeDemo maskeleme ekranı, iPhone simülatörü, koyu tema

Zaman Çizelgesi

  1. Repo geniş kapsamlı bir AI/ML framework'ü olarak açıldı; v1.0.0 ve v1.1.0 etiketlendi

  2. Dokümantasyon, README ve CI çalışması; v1.2.0–v1.2.2 etiketlendi

  3. Sadeleştirme: release script'leri ve kullanılmayan modüller kaldırıldı

  4. 2.0.0 olarak yeniden kuruldu: bağımlılığı olmayan tek library target; 1.x API'si korunmadı

Bağlantılar

İlgili Yazı

Yazıyı Oku