İçeriğe atla
openplate

Uygulama

Tek bir yapay zeka faturasını hane genelinde paylaşmak

Kişi başı harcama limiti ve iptal etme hakkıyla, tek bir yapay zeka faturasını tüm ev halkı arasında paylaşma

Bu sayfa, İngilizce belgeden makine çevirisiyle çevrildi.

openplate kendi anahtarını getir modelindedir: Her kişi uygulamayı bir yapay zeka sağlayıcısına yönlendirir ve kendi tabak taramalarının ücretini öder. Aynı hane içinde bu mantıksızdır. Kimse dört tane sağlayıcı hesabı istemez, tek bir anahtarı paylaşmak ise daha da kötüdür: Kimin ne harcadığını anlayamazsın ve bir kişiyi iptal etmek herkesi iptal eder.

Bunun için bir sunucuya ihtiyacın yok. Çözüm sağlayıcıdadır: Tek bir hesap, kişi başına bir anahtar ve anahtar başına bir harcama limiti. Önce o bölümü oku; daha aşağıdaki iki sunucu odaklı yanıt, bu yöntemin kapsamadığı durumlar içindir.

Buradaki hiçbir şey günlüğü paylaşmaz. Herkesin yemek kaydı kendi cihazındaki kendi tarayıcı depolama alanında kalır. Ağ üzerinden iletilenler, giden bir fotoğraf ve geri gelen bir tahminden ibarettir. Faturayı ödeyen kişi, her birinin kaç istek yaptığını ve bunun ne kadara mal olduğunu görebilir. Kimin ne yediğini göremez.

OpenRouter ile kısa versiyon

OpenRouter, tek bir hesap altında her birinin kendi kredi limiti ve kullanım satırı olan dilediğin sayıda API anahtarı üretebilir. Bu, tam olarak bir hanenin ihtiyaç duyduğu özelliktir.

  1. Hesabı tek bir kişi oluşturur openrouter.ai adresinde hesabı açar ve kredi ekler. Yalnızca bu kişi oturum açar; başka kimsenin bir hesaba ihtiyacı yoktur.
  2. Anahtarlar sayfasını aç ve kişi başına bir anahtar oluştur. Her anahtara kişinin adını ver: Daha sonra kullanım dökümünde göreceğin ad budur, bu yüzden "Sam", "anahtar 3" adından daha iyidir.
  3. Her anahtarı oluştururken üzerine bir kredi limiti koy. Üst sınır budur. Limiti olmayan bir anahtar hesaptaki tüm bakiyeyi harcayabilir, bu yüzden "sınırsız" seçeneğini burada kaçınman gereken şey olarak gör.
  4. Her kişiye kendi anahtarını gönder. Sonsuza kadar kalacağı bir grup sohbetinde değil, bir parolayı nasıl iletiyorsan öyle gönder.
  5. Her kişi bunu yapıştırır. openplate içinde: Ayarlar → Yapay Zeka, OpenRouter seçeneğini belirle ve "paste an API key manually" panelini kullan. Anahtar sadece o tarayıcıda saklanır. JSON dışa aktarımına dahil edilmez ve openplate sunucusuna asla ulaşmaz.

Bütün kurulum bu kadar. Beş dakika, konteyner yok, bakım yok.

Çalıştırma

  • Kimin ne harcadığı: OpenRouter kontrol paneli kullanımı anahtar bazında ayırır. Her anahtara bir kişinin adı verildiği için, kişi başına faturanız budur.
  • Bir kişinin erişimini iptal etme: anahtarını sil. Başka kimse etkilenmez, kimse bir ayarı değiştirmez ve erişimi iptal edilen kişinin başvurabileceği başka bir yol yoktur: o anahtar tek kimlik bilgisiydi. Günlüklerine dokunulmaz; hiçbir zaman anahtarın üzerinde değildi.
  • Birine daha fazlasını verme: o anahtarın limitini yükselt. Anında yürürlüğe girer, hiçbir yerde yeniden başlatma gerekmez.
  • Birinin anahtarı çalışmayı durdurursa: limitlerine ulaştılar veya anahtarı sildin. openplate sağlayıcının hatasını ekrana yansıtır; çözüm uygulama içinde değil, Keys sayfasındadır.

Sadece anahtarları değil, hesabı da sınırla. Anahtar başına limitler her kişiyi sınırlar, ancak asıl tükenen şey hesap bakiyesidir. Bakiyeyi kaybetmeyi göze alabileceğin bir seviyede tut ve yüklemeleri bilinçli yap.

Bunu otomatikleştirme. OpenRouter ayrıca anahtarları programatik olarak oluşturmak ve yönetmek için bir API sunar; birkaç kişiden fazlası için kaynak sağlıyorsan bunu bilmende fayda var. Bir aile için kontrol paneli, betik yazmaktan daha hızlıdır.

Diğer alternatif: yönetilen bir openplate-core örneği

Sağlayıcın limitli alt anahtarlar vermiyorsa (Mistral, çoğu doğrudan sağlayıcı API'si), yukarıdaki alt anahtar tarifinin çalışabileceği bir zemin yoktur. yönetilen bir openplate-core örneği tam olarak bunun içindir: INSTANCE_MODE=managed ayarla (CORE_URL gerektirir) ve evindekilerin eşitleme için zaten kullandığı hesap hizmeti, hesap başına günlük bir istek kotası ile birlikte aynı zamanda yapay zeka vekili haline gelir.

Sağlayıcı alt anahtarları yerine bunu şu durumlarda seç:

  • Sağlayıcının anahtar başına harcama limiti yoktur, bu yüzden sınırın senin kontrol ettiğin bir yerde bulunması gerekir.
  • Kişi başına bir kredi bakiyesi yerine kişi başına günlük istek sınırı istersin.
  • Ev halkını hiçbir sağlayıcı kontrol panelinin bulunmadığı kendi openplate-inference makinene bağlıyorsan, yönetilen bir örnek, aşağıdaki API_KEYS izin listesinde bulunmayan kişi başına kota ve kullanım takibini ekler.
  • Erişim iptalinin, herkesin yeniden yapıştırdığı paylaşımlı bir anahtar yerine yönetim ekranında tek bir işlem olmasını istersin.

Mümkün olduğunda sağlayıcı alt anahtarlarını kullanmaya devam et. OpenRouter kullanıyorsan, işin zaten beş dakika önce bitti ve ayakta tutulacak bir hizmet yok.

Kurulum: openplate-core'u ayağa kaldır (sync.md ve topologies.md bölümlerine bak) ve openplate uygulamasında INSTANCE_MODE=managed ayarını yap. .env içindeki UPSTREAM_BASE_URL, UPSTREAM_API_KEY ve AI_ADVERTISED_MODEL ile çekirdek sunucuyu sağlayıcına yönlendir. Son satır zorunludur. Model olmadan uygulama tarama yapmaz. Sunucuda ADMIN_TOKEN ile, bir yönetici olarak kendin için ilk daveti oluştur (self-hosting.md komutu içerir). Buradan sonra, uygulamada /admin ekranından her hesaba günlük bir kota vererek kişileri davet et. Çekirdek sunucuda e-posta yapılandırılmışsa davet kişiye postalanır. Yapılandırılmamışsa, /admin sana linki gösterir ve sen de onu bir parolayı gönderir gibi gönderirsin. Unutulan bir parola da aynı şekilde işler. E-posta yapılandırılmamışsa kullanıcı sana sorar ve sen de /admin içindeki Kişiler altından sıfırlama linkini oluşturursun. Her kişi oturum açar ve hesapları yapay zeka bağlantısını zaten taşır. Ayrı bir adım ve yapıştırılacak hiçbir şey yoktur. Bir hesabı askıya almak veya yeniden etkinleştirmek aynı yönetici ekranıdır ve hemen geçerli olur.

Buna güvenmeden önce bilmeye değer iki şey var. Kota para birimini değil, istekleri sayar, bu yüzden sağlayıcıdaki üst anahtara da kesin bir harcama üst sınırı koy: parayı yalnızca sağlayıcı durdurabilir. Ayrıca bir kişinin kotası hesap başına açıkça belirlenir, sınırsız bir varsayılan yoktur.

Eşitleme ve YZ vekili artık aynı hizmettir, bu nedenle yönetilen bir örneğin sunucusu yönetilmeyen bir sunucuya göre daha fazlasını görür: bir e-posta adresi, anahtarına sahip olmadığı şifreli metin ve bir tarama için bir kez okunan ve saklanmayan fotoğraf. Yine de bir günlük girdisini asla açık halde görmez. Her bileşenin ne tuttuğuna dair tablonun tamamı için architecture.md bölümüne bak.

Alternatif: paylaşılan bir çıkarım kutusu

Donanıma kendin sahipsen, tek bir faturayı paylaşmanın diğer yolu hiç fatura ödememektir. Evdeki bir makinede openplate-inference çalıştır ve evdeki her tarama hiçbir bulut sağlayıcısı dahil olmadan yerel olarak hesaplansın. Bunun donanım ve operasyonel iş olarak sana neye mal olacağını görmek için topologies.md bölümüne bak: bu, bir panele beş anahtar yapıştırmaktan belirgin derecede daha zorlu bir adımdır.

Daha kaba olsa da kişi başı anahtarları bu yöntemin de vardır. Çıkarım konteynerindeki API_KEYS, kabul edilen taşıyıcı anahtarların virgülle ayrılmış listesi biçimidir:

bash
-e API_KEYS="opk_alex_...,opk_sam_...,opk_robin_..."

O listeden her kişiye bir girdi ver, her biri kendisininkini örneğin temel URL'si (örneğin http://openplate.example.lan:8300/v1) ve model openplate-plate-1 ile birlikte openplate içinde Ayarlar → Yapay Zeka → OpenAI uyumlu altına yapıştırsın. Listeden bir anahtar çıkarıp yeniden başlatmak tam olarak o kişinin yetkisini iptal eder.

Sağlayıcı alt anahtarlarına kıyasla iki dürüst sınırlama:

  • Anahtar başına harcama veya oran sınırı yoktur. Liste bir izin listesidir, fazlası değil. Kaynak kendi boşta duran GPU'n olduğunda ve bir isteğe para bağlı olmadığında bu durum sorun teşkil etmez.
  • Anahtarları oluşturmak ve dağıtmak sana aittir. Herhangi bir rastgele dize işe yarar (openssl rand -base64 24), bir panel yoktur ve kişi başı kullanım raporu da bulunmaz: eline konteynerin günlükleri geçer.

Değişkenlerin tam listesi: openplate-inference docs/configuration.md.

Bunun için örnek tarafından sağlanan YZ kısayolunu kullanma. openplate üzerinde DEFAULT_INFERENCE_API_KEY ayarını yapmak herkese tek bir dokunuş sağlar ve yapıştırılacak bir anahtar bırakmaz, ancak bu anahtar sayfa HTML'sine gömülür ve uygulamayı açabilen herkes tarafından view-source ile okunabilir, yani başladığın sorunla birlikte yine paylaşılan tek bir kimlik bilgisi haline gelir. Ulaşabilen herkese güvendiğin bir yerel ağ veya tailnet için uygundur, başka her yer için yanlıştır. Bkz. configuration.md.

Aile için hesaplar

Hem eşitleme hem de yönetilen bir örnek, çalıştırdığın openplate-core hizmetinde her kişiye bir hesap verir.

  • Davetiyeleri kullan. İlk hesabı kendin için sunucuda oluşturursun (komut self-hosting.md içinde yer alır). Bundan sonra her kişiyi uygulamadaki /admin kısmından davet et.
  • OPEN_SIGNUP ayarını kapalı tut. Adresi bulan herkesin hesap istemesine olanak tanır. Bir ailenin buna ihtiyacı yoktur.
  • E-posta isteğe bağlıdır. E-posta olmadan, /admin her davetiyeyi ve sıfırlama bağlantısını gösterir, sen de bunu kendin iletirsin. self-hosting.md, her iki yolu ve istersen e-postayı nasıl kuracağını açıklar.

Bu sayfayı GitHub üzerinde düzenle