Telefon
Głos wejściowy i wyjściowy oraz SMS. Bez połączeń telefonicznych.
Co to robi
Rozpoznawanie i synteza mowy działają w trybie self-hosted, z routingiem językowym u różnych dostawców oraz warstwą zarządzania kolejnością wypowiedzi, która obsługuje przerywanie i przesyłanie strumieniowe na poziomie zdań, dzięki czemu rozmowa nie przypomina korzystania z krótkofalówki. Osobna ścieżka SMS dla wiadomości tekstowych jest zaimplementowana za flagą funkcji.
Dlaczego to ma znaczenie
Voice to obszar, w którym koncepcja „asystenta” staje się rzeczywistością albo legnie w gruzach, a kluczem do wszystkiego są opóźnienia. Hosting własny (self-hosting) mowy oznacza, że czas odpowiedzi nie zależy od kolejki zewnętrznego dostawcy.
Jak to działa
Przetwarzanie mowy domyślnie działa lokalnie (self-hosted)
Rozpoznawanie i synteza działają we własnych kontenerach, z routingiem do zewnętrznych dostawców dla języków, z którymi lokalne modele radzą sobie słabo.
Zarządzanie kolejnością wypowiedzi jest jawne
Bramka kolejności i moduł dzielenia na zdania zarządzają przerywaniem i strumieniowaniem, zamiast czekać na pełną odpowiedź przed rozpoczęciem mówienia.
Telefonia ogranicza się do SMS-ów i jest domyślnie wyłączona
Ścieżka SMS jest gotowa, ale ukryta za flagą i wymaga konta u operatora. Połączenia głosowe były poza zakresem projektu i nie zostały zaimplementowane.
Pytania
- Czy mój agent może odebrać telefon?
- Nie. Połączenia przychodzące i wychodzące nie są obsługiwane. Głos działa w przeglądarce; telefonia ogranicza się do SMS-ów i jest obecnie zablokowana.
- Które języki są obsługiwane przez funkcję mowy?
- Szeroki wachlarz, z routingiem do różnych dostawców w zależności od języka, w tym z dedykowanym dostawcą dla języków indyjskich, z którymi ogólne modele radzą sobie gorzej.
The rest of the bag
AccessControl
Uprawnienia na poziomie dokumentu, które filtrują odpowiedzi, a nie tylko strony.
Rozstrzyganie polityki jest buforowane dla każdej sesji w celu zwiększenia szybkości; zmiana uprawnień propaguje się po unieważnieniu pamięci podręcznej, a nie natychmiast dla każdego przetwarzanego żądania.
Dokumentacja
Drzewo folderów, które agent odczytuje, oraz plik konfiguracyjny, którego przestrzega.
Ekstrakcja obejmuje pliki PDF, arkusze kalkulacyjne i transkrypcje. Egzotyczne formaty binarne nie są analizowane.
Zdarzenia
Trwały rejestr tego, co zrobili agenci i dlaczego.
Szyna zdarzeń wewnątrzprocesowych to emiter jednowęzłowy, a nie rozproszony broker. Trwały rejestr międzyagentowy to osobny rejestr zadań w bazie Postgres.
That was step 1 of 6: a request arrives. Next, the subdomain is the isolation boundary, so the request resolves to one workspace, one database, and one question of whether it is even in scope.