İçeriğe atla
megapromotingHadi konuşalım
Ürünler World Agent

Görsel etkileşim ve ajanlar Demonstrator de cercetare

Gördüğünüz şeyi değiştirebilen bir konuşma.

World Agent, görsel bir sahneyle doğal dilde etkileşim için bir göstericidir. Konuşma, bir nesnenin durumu ve 3D bir ortamda görülebilir eylemler arasındaki bağlantıyı araştırıyoruz.

World Agent: câmpul de intenție, cu o comandă în limbaj natural și candidații de context punctați dedesubt
vision.megapromoting.com · doğal dilde bir komut ve sistemin uygun gördüğü bağlam

World Agent

Bilgiden yapılmış işe.

01

Ne istediğinizi söylersiniz

Doğal dilde bir istek, istenen değişikliği tanımlar.

02

Sistem yorumlar

İstek, demonstratörde bulunan eylemlerle ilişkilendirilir.

03

Sahne yanıt verir

Görsel ortam güncellenir ve adımlar izlenebilir.

Nerede faydalı olur.

Ürün gösterimleri

Bir nesnenin ve seçeneklerinin konuşma yoluyla keşfi.

3D arayüzler

Kullanıcı komutları ile gezilebilir bir sahne arasındaki bağlantı.

Cercetare

Ticari entegrasyonlardan önce görsel bir runtime’ın değerlendirilmesi.

Demo serisinin sahnesi ve kataloğu kavramsaldır. Bu sürümde bir CRM entegrasyonunu ya da bir dünya üretici modelini bağlıymış gibi sunmuyoruz.

World Agent ayrıntılı olarak

Bu proje ile neler yapabilirsiniz.

World Agent bir arayüz sorusuna yanıt verir: düğmelere basmak yerine ne istediğinizi söylediğinizde ve sahne gözünüzün önünde değiştiğinde ne olur? Konuşursunuz ve sahnedeki araç rengini, jantlarını, çevreyi, havayı, saati, kamera açısını, kapıları ve bagajı değiştirir.

İlginç olan, komutu anlaması değil; her değişikliğin, nereden geldiğini söyleyen bir iz bırakmasıdır: katalogdan, kullanıcının komutundan, yaratıcı katmandan ya da sistemden. Alp güzergâhında bir sis katmanı „görsel simülasyon” olarak etiketlenir; dört seçenekli paletten bir renk „katalog” olarak etiketlenir. Kullanıcının neyin gerçek, neyin dekor olduğunu tahmin etmesi gerekmez.

Diskte benzer ada sahip üç dizin vardır; bunlardan ikisi — `world-agent-v2` ve `world-agent-provenance-atlas` — ayrı projeler değil, aynı deponun git çalışma kopyalarıdır. Gerçek varyant, bugün V2 “World Generator” yeniden formülasyonunu taşıyan ve `v2/world-generator` dalıyla bit bit aynı olan `main` dalındaki `world-agent`tır.

01

Yerel, deterministik Romence komut derleyicisi

Yaklaşık 22 Romence metin eşleştirme kuralı, bir cümleyi türlendirilmiş bir durum değişikliğine dönüştürür. „Arabayı beyaz yap ve spor jantları tak” iki kurala dokunur ve iki ayrı olay üretir. Bu bir dil modeli değildir: tarayıcıda çalışan, her seferinde aynı sonucu veren ve satır satır okunabilen koddur.

02

Metne geri dönüşlü ses

Ses tanıma, tarayıcıdaki `webkitSpeechRecognition` kullanır ve dili `ro-RO` olarak sabitlenmiştir. Arayüzün olmadığı yerde — ya da kullanıcı klavyeyi tercih ettiğinde — komut çubuğu aynı kurallarla çalışmaya devam eder. Sesi hiçbir yere göndermiyoruz.

03

Deterministik 3D sahne

Three.js ilkel öğelerinden prosedürel olarak oluşturulmuş bir araç (karoser, cam kapsüllü kabin, jantlı dört tekerlek, farlar, kapılar, bagaj), halka, ızgara ve üç ışık içeren bir platform üzerinde. ACES Filmic ton eşlemesiyle işleme, piksel oranının 1,75 ile sınırlandırılması ve sistem azaltılmış hareket istediğinde animasyonun tamamen durdurulması.

04

Provenans rayı

Her durum değişimi, dört etiketten biriyle bir olay üretir: Catalog, User command, Creative layer veya System. “Creative layer” etiketi kelimesi kelimesine “Yaratıcı / simüle edilmiş katman” olarak gösterilir. Teklif fişi “İşaretlenmiş kurgusal veriler — ticari teklif değildir” ayrıntısıyla görünür.

05

Ses ve görsel araçlar için çalışma zamanı sözleşmesi

Sekiz görsel araç (`visual.inspect`, `visual.highlight`, `visual.move`, `visual.create`, `visual.delete`, `world.query`, `ui.navigate`, `ui.open_panel`) içeren standartlaştırılmış bir runtime ve dünya revizyon numaraları içeren bir olay günlüğü vardır. Eski revizyonla yapılan bir çağrı `STALE_REVISION` ile reddedilir; aynı `actionId` ile tekrarlanan bir çağrı, yeniden çalıştırma olarak işaretlenmiş orijinal makbuzu döndürür. Ses adaptörü `NOT_CONNECTED` durumunu kendisi bildirir — sözleşme uygulanmıştır, sağlayıcı bağlı değildir.

06

Dünya motorlarının dürüst kaydı

Altı şerit, her biri kendi beyan edilen durumu ile: Entegre edilmeye hazır belgeli API, açık çalıştırılabilir bileşenler, değerlendirmeye açık araştırma, iletişim kurulacak sağlayıcı, herkese açık API olmadan araştırma önizlemesi ve AB için engellenmiş olarak işaretli, incelenen lisansların lansmana izin vermediği bir şerit. Genie 3 açıkça araştırma önizlemesi kategorisindedir — entegrasyon değil.

Veri ve çalışma

Sisteme ne girer. Ne doğrulanmalıdır.

Sahne motoru nedir ve generatif model ne olurdu
Burada en sık karışan sınır budur. World Agent bir sahne motorudur: nesneler önceden vardır, izin verilen eylemler listelenmiştir ve komut bunlar arasından seçim yapar. Bir dünya generatif modeli ise daha önce görülmemiş geometri ve dinamiği, talep üzerine üretirdi. İkinci şey bağlı değildir ve arayüz bunu söyler: bu build içinde dünya üreten bir temel model yoktur.
Sözlük sonludur ve bu bir eksiklik değil, bir özelliktir
Sözlük dışı bir istek bir varsayımı tetiklemez: sistem, rengi, jantları, ortamı, hava durumunu, kamerayı, kapıları, bagajı ve demo fişi kontrol edebildiğini söyler ve “Yürütülmeyen istek — demo sözlüğünde güvenli bir eylem bulamadık” olayını kaydeder. Bir müşteri demosunda sözlüğün sınırı görünür olmalıdır, maskelenmemelidir.
Sahnede kavramsal olan nedir
Araç ve katalog kavramsaldır — uydurma isimli dört renk, iki jant seti, iki iç mekân. Bir otomobil üreticisinden 3D model yoktur ve bir tane için haklar da yoktur. Fiyatlar bilerek kullanılamaz durumdadır: teklif fişinde kurmaca veri etiketi taşınır.
Bağlı olmayan nedir
CRM yok, üretici kataloğu yok, canlı fiyat yok, özerk dış eylemler yok. Kişisel bağlayıcılar (posta, mesajlaşma) arayüzde NOT CONNECTED etiketiyle görünür. Deploy statik bir build sunar: sunucu durumu yoktur, dolayısıyla kullanıcı verisi de yoktur.
Durum yalnızca oturum içinde kalıcıdır
„Kaydedilmiş” yapılandırma, System kaynağı ve „Durum demo içinde yerel olarak kaydedildi” ayrıntısıyla sayfanın belleğinde kalır. Bir yenileme onu siler. Bu bir veritabanı değildir.

Keşiften uygulamaya

World Agent ile bir proje nasıl hazırlanır.

01

1. Nesneyi ve ziyaretçinin neyi keşfedebilmesi gerektiğini seçeriz

Yapılandırılabilir fiziksel bir ürün, bir mekân, bir makine. Başlangıç sorusu, sahneyi gördükten sonra ziyaretçinin hangi kararı verdiğidir.

02

2. İzin verilen eylemleri listeler, sonra kuralları yazarız

Frazeler listesinden değil, güvenli eylemler listesinden başlanır. Her eylem, onu tetikleyen dil kurallarını, kamuya uygun dilde ve doğru kaynak etiketini alır.

03

3. Merkezi değil, sınırı test ederiz

Geçerli istekler işin kolay kısmıdır. Muğlak istekler, senaryonun dışındaki istekler ve birden fazla eylemi birleştiren istekler test edilir; böylece „bunu yapamam, ama şunları yapabilirim” yanıtı yararlı olur.

04

4. Statik build olarak yayımlarız

Sonuç, nginx tarafından kendi sunucusunda sunulan statik bir pakettir; Let's Encrypt sertifikası ve sembolik bir bağlantının değiştirilmesiyle önceki sürüme geri dönme imkânı vardır. Sunucu sürecine ihtiyaç duymaz.

Netleştirilmesi gereken sorular.

World Agent olan bu üç dizinden hangisi gerçek olanıdır?

Yalnızca biri: `world-agent`, `main` dalında. `world-agent-v2` ve `world-agent-provenance-atlas`, aynı depodan oluşturulmuş git çalışma ağaçlarıdır (`git worktree`), aynı anda birden fazla tasarım varyantının bulunması için kullanılır. `main` ve `v2/world-generator` bugün aynı commit üzerindedir; dolayısıyla “V2 varyantı” başka bir proje değildir, çalışan şey odur.

Genie ya da Sora gibi üretken bir dünya modeli mi?

Hayır. Bu bir sahne motorudur: nesneler ve eylemler önceden vardır, komut bunlar arasından seçim yapar. Genie 3, kayıtlarımızda gerçek statüsüyle tam olarak yer alır — araştırma önizlemesi, yayımlanacak herkese açık API yok, yayımlanmış ağırlıklar yok. Bizim yaptığımız şey ise daha az gösterişli ve güvence altına alınması daha kolaydır: aynı komut aynı sonucu verir ve her değişiklik bir provenance etiketi taşır.

Komutı nasıl anlıyor — bir dil modeli mi kullanıyorsunuz?

Hayır, ve bu bilinçli bir tercih. Derleyici, tarayıcıda çalışan, Romence metin üzerinde eşleşme yapan yaklaşık 22 kuraldan oluşan bir kümedir; tiplenmiş durum değişiklikleri üretir. Avantajı: deterministtir, istek başına maliyeti yoktur, metni hiçbir yere göndermez ve satır satır denetlenebilir. Dezavantajı: sözcük dağarcığı sınırlıdır ve bir istek bunun dışına çıktığında sistem uydurmak yerine bunu söyler.

Ses neyle çalışıyor?

Tarayıcıdaki ses tanıma ile — `webkitSpeechRecognition`, dili `ro-RO` olarak sabitlenmiş halde. Bu pratikte Chromium motorlu tarayıcılar demektir. Bunun dışında metin çubuğu da aynı şeyi, aynı kurallarla yapar: ses bir kolaylıktır, bağımlılık değildir.

Teklif fişindeki fiyatlar gerçek mi?

Hayır, ve bunu gösteren olayın kendisinde de böyle işaretlenmişlerdir: “Sahte veriler işaretlendi — bu bir ticari teklif değildir”. Bir üretici kataloğuyla ya da bir fiyat sistemiyle entegrasyon yoktur. Bir müşteri için yapılan uygulamada fiyat kaynağı onun sistemi olurdu ve provenance etiketi “Demo Catalog”dan gerçek kaynağa değişirdi.

Bizim CRM'e bağlanıyor mu?

Bu build'de hayır. Bağlayıcılar arayüzde NOT CONNECTED etiketiyle görünür ve araç sözleşmesi vardır ama sağlayıcı adaptörü kendi başına `NOT_CONNECTED` bildirir. Ancak ağır kısım zaten yazılmıştır: sekiz tiplenmiş görsel araç, dünya revizyon numaraları, eski revizyonda reddetme ve idempotent makbuzlar — yani bir ajanın, arada durum değişmişken aynı eylemi iki kez uygulamamasını sağlayan korumalar tam olarak vardır.

Bir makine dışında başka bir şey için kullanılabilir mi?

Evet, yukarıda açıklanan yapılandırma çalışmasıyla: sahne, izin verilen eylem listesi ve dil kuralları ilgili nesne için yeniden yazılır. Yeniden kullanılan şey mimaridir — deterministik derleyici, provenance rayı, araç sözleşmesi ve durum revizyon disiplini.

İllüstratif örnek

“Bizi Alplere götür, gece, yağmurda”

Müşteri verisi veya atfedilen ticari sonuçlar olmadan bir kullanım senaryosu.

İlk durum

Ziyaretçi, komut çubuğunda bu cümleyi söyler veya yazar.

Nasıl çalışır

Metin, Romence eşleşme kuralları üzerinden geçirilir: “alpi” alpin ortamı etkinleştirir, “noapte” saati değiştirir, “ploa” yağmur katmanını etkinleştirir. Her kural kendi provenance etiketiyle ayrı bir olay üretir ve Three.js sahnesi buna göre kamerayı, sisi ve arka plan rengini yeniden düzenler.

Rezultatul

Sahne hemen değişir ve yan railde üç giriş görünür: “Bileşik ortam — Yaratıcı / simüle edilmiş katman — Alpin rota”, “Simüle edilmiş zaman — Yaratıcı / simüle edilmiş katman — Gece aydınlatması” ve “Simüle edilmiş hava — Yaratıcı / simüle edilmiş katman — Etkin yağmur katmanı”. Ajan, 3 değişiklik uyguladığını ve her birinin kaynağını koruduğunu belirtir. Hiçbir giriş bunun gerçek veri olduğunu iddia etmez.

Ce este necesar:Un browser cu WebGL. Pentru comandă vocală, un browser pe motor Chromium; altfel bara de text face același lucru.

İş birliği olanakları

World Agent, kuruluşunuz bağlamında.

İç akışlar ve bilgi

Yetkilendirilmiş kaynakların bağlanması, bilginin düzenlenmesi ve işlemlerin ekip tarafından, rollere göre ayrı erişimle gözden geçirilmesi.

Özel şirketler

Gerçek bir süreç etrafında bir pilot tanımlıyoruz: kullanıcılar, veriler, entegrasyonlar, maliyetler ve kabul kriterleri. Sonucun değerlendirilmesinden sonra genişleme gelir.

Kamu kurumları ve şirketleri

Erişilebilirlik, barındırma, veri koruması ve birlikte çalışabilirlik gereksinimlerini belirliyoruz. AGE veya STISC hizmetleriyle herhangi bir bağlantı, uygunluk, erişim ve onayların doğrulanmasını gerektirir.

Bunlar uyarlama senaryolarıdır, mevcut sözleşmeler veya ortaklıklar hakkında beyanlar değildir. Önerilen işlevler projenin çalışma alanında doğrulanır.

Bir pilotu konuşalım

Bir ekosistemin parçası.

Neyin daha iyi çalışmasını isterdiniz?

Bize sürecinizi anlatın. Neyin kurulmaya değer olduğuna, neyi bağlayabileceğimize ve sonucu nasıl doğrulayacağımıza birlikte karar verelim.

Hadi konuşalım