top of page

datasette-llm 0.1a10 naprawia błąd przywracający wykluczone modele

20 minut temu
10 minut(y) czytania

datasette-llm 0.1a10 naprawia błąd, który umożliwiał filtrowaniu modeli przywracanie opcji wcześniej wykluczonych przez operatora. Simon Willison wydał aktualizację 4 listopada 2026 roku. Informacje o wydaniu opisują korektę wcześniej skonfigurowanych list dozwolonych modeli, określających, które modele aplikacja dopuszcza.

Napięcie dotyczy konfiguracji operatora i wyborów, które aplikacja faktycznie akceptuje. Ograniczona lista modeli niewiele znaczy, jeśli inny komponent może później ją rozszerzyć. Bezpośrednia presja dotyczy deweloperów łączących dostęp do modeli, rozliczanie i interfejsy agentów w ramach tego samego wdrożenia.

LiteLLM, bramka pośrednicząca w dostępie do dostawców AI, stanowi użyteczne porównanie dla sposobów rozmieszczania tych mechanizmów kontroli w aplikacjach. W tym przypadku zgłoszony problem dotyczył filtrów wewnątrz integracji wtyczki Datasette. Wydanie rozwiązuje konkretny błąd kompozycji, pozostawiając właścicielom wdrożeń odpowiedzialność za sprawdzenie własnych kombinacji.

Co zmienia datasette-llm 0.1a10

Aktualizacja zachowuje wykluczenia, gdy filtry modeli działają razem. Oznacza to, że wydanie dotyczy zachowania aplikacji, a nie nowego modelu, poprawy wyniku benchmarku czy rozszerzonego katalogu dostawców.

Projektowy poprawka kompozycji filtrów opisuje awarię. Każdy hook filtrowania, czyli funkcja rozszerzenia modyfikująca dostępne opcje, otrzymywał tę samą początkową listę modeli. Zwracane listy zastępowały skumulowany wynik. Przy aktywnej wtyczce rozliczeniowej jej filtr cenowy mógł przywracać wykluczone modele.

W pull requeście wskazano również, że Datasette Agent oferował te modele i akceptował je podczas tworzenia rozmów. Ten szczegół nadaje problemowi praktyczne znaczenie wykraczające poza nieoczekiwanie szerokie menu. Według projektu rozbieżność sięgała zachowania aplikacji podczas tworzenia rozmów.

Korekta przecina wyniki według identyfikatora modelu, zachowując modele, które przechodzą przez mające zastosowanie filtry. Projekt informuje o 75 przechodzących testach i kontroli integracyjnej z użyciem wtyczek rozliczeniowych i agentowych. W tej kontroli wykluczony model otrzymał HTTP 400, czyli odpowiedź błędu, natomiast dozwolony model otrzymał HTTP 200, czyli odpowiedź pomyślną.

Wyniki te są walidacją zgłoszoną przez opiekunów projektu. Potwierdzają deklarowaną naprawę, nie dowodząc jednak, że każde wdrożenie lub kombinacja wtyczek zewnętrznych zachowuje się identycznie. Dają też operatorom konkretne zachowanie, z którym mogą porównać własne instalacje.

Wydanie zmienia relację między ograniczeniami. Komponent oceniający, czy może rozliczać model, nie powinien po cichu unieważniać decyzji innego komponentu o jego wykluczeniu. W przeciwnym razie dodanie funkcji operacyjnej zmienia dostęp w sposób, o który operator nie prosił.

To rozróżnienie ma znaczenie przy ocenie zakresu aktualizacji. Nowo dostępny model może być zamierzoną zmianą konfiguracji. Powrót wcześniej wykluczonego modelu dlatego, że inny filtr uruchomił się później, jest innym rezultatem — nawet jeśli aplikacja nadal działa.

Dla osób śledzących wydanie zapamiętywalnym faktem jest interakcja. Błąd pojawił się tam, gdzie indywidualnie użyteczne komponenty łączyły swoje odpowiedzi. Traktowanie wyniku każdego komponentu jako ostatecznej odpowiedzi pozwalało późniejszej decyzji wyprzeć wcześniejsze ograniczenie.

Wyjaśnia to, dlaczego wąskie wydanie utrzymaniowe zasługuje na uwagę zespołów korzystających z rozszerzalnego oprogramowania AI. Pomyślna instalacja i pomyślne generowanie nie dowodzą, że ograniczenia przetrwały drogę między nimi. Zgłoszona korekta dotyczy właśnie tej drogi.

Praktyczna konsekwencja jest konkretna: dostępność modeli musi odzwierciedlać wszystkie mające zastosowanie ograniczenia w punkcie, w którym aplikacja dokonuje wyboru. Plik konfiguracji wyraża intencję; działająca kombinacja określa, czy użytkownicy jej doświadczą.

Operatorzy mierzą się z luką między skonfigurowanym a faktycznym dostępem

Właściciele wdrożeń ponoszą konsekwencje, gdy zamierzone ograniczenia różnią się od faktycznego dostępu. Deweloperzy definiują integrację, ale to operatorzy wybierają modele, które są gotowi udostępnić.

Konfiguracja wtyczek Datasette zwykle znajduje się pod wpisami wtyczek w pliku konfiguracji. Taki układ daje operatorom rozpoznawalne miejsce do wyrażania ustawień. Sam w sobie nie pokazuje jednak, jak każde rozszerzenie połączy te ustawienia podczas działania.

To rozróżnienie przypomina znany problem operacyjny. Dokument może trafnie opisywać politykę, podczas gdy oprogramowanie wdraża ją nieprawidłowo. Przegląd dokumentu ustala, czego zażądano. Obserwacja zachowania aplikacji ustala, czy żądanie odniosło skutek.

W przypadku publicznej demonstracji ograniczony wybór może definiować zamierzone doświadczenie. Odwiedzający powinni napotkać opcje wybrane przez jej właściciela. Jeżeli niezwiązane z tym zachowanie wtyczki rozszerzy wybór, demonstracja przestaje odpowiadać deklarowanym założeniom operacyjnym właściciela.

W przypadku aplikacji wewnętrznej rozumowanie obejmuje zatwierdzonych dostawców i obsługiwane przepływy pracy. Organizacja może celowo ograniczyć wybór do modeli ocenionych przez swój zespół. Nieoczekiwana dostępność wymagałaby dochodzenia, zanim ktokolwiek mógłby ustalić, czy doszło do rzeczywistego naruszenia polityki.

Są to potencjalne konsekwencje, a nie zgłoszone rezultaty tego wydania. Publiczna korekta nie dowodzi strat finansowych, ujawnienia wrażliwych informacji ani nieautoryzowanego użycia dostawcy. Takie wnioski wymagają dowodów dotyczących żądań, poświadczeń i dotkniętego wdrożenia.

Mimo to bezpośrednie pytanie operatora się zmienia. Przed poprawką wąska konfiguracja mogła współistnieć z szerszymi faktycznymi możliwościami wyboru w opisanej interakcji wtyczek. Po aktualizacji operator potrzebuje dowodów, że działająca aplikacja odpowiada teraz zamierzonym ograniczeniom.

Dowody te muszą odzwierciedlać zainstalowaną kombinację. Izolowany test dewelopera może pominąć zachowanie wprowadzone przez rozszerzenie rozliczeniowe lub inny komponent aplikacji. Istotny system obejmuje komponenty uczestniczące w rzeczywistym żądaniu.

Obciążenie organizacyjne przekracza również granice zespołów. Osoba utrzymująca konfigurację może nie utrzymywać interfejsu wyboru modelu. Osoba dodająca rozliczanie może zasadnie zakładać, że rozliczanie nie może poszerzać dostępu. Usterka pokazuje wagę wyraźnego określenia tego założenia.

Właściciel aplikacji potrzebuje zatem wspólnej definicji zatwierdzonego wyboru modelu. Czy zatwierdzenie dotyczy tego, co pojawia się w interfejsie, tego, co może wskazać żądanie, czy tego, co ostatecznie otrzymuje prompt? Te pytania opisują powiązane, lecz odrębne obserwacje.

Jasna odpowiedź pomaga zespołom uniknąć sporów opartych na różnych dowodach. Właściciel interfejsu może pokazać ograniczone menu, podczas gdy inny deweloper znajdzie zaakceptowane żądanie spoza tego menu. Obie obserwacje mogą być trafne, lecz dopiero ich połączenie wyjaśnia faktyczną granicę.

Presja jest natychmiastowa dla dotkniętych wdrożeń i bardziej długotrwała dla autorów wtyczek. Operatorzy potrzebują zweryfikowanej korekty. Deweloperzy potrzebują zasad łączenia, które pozostają zrozumiałe, gdy do aplikacji dołącza kolejne rozszerzenie.

Dlaczego łączenie filtrów wymaga wyraźnej reguły

System filtrowania musi określać, czy komponenty mogą zawężać wybory, rozszerzać je, czy robić jedno i drugie. Bez tej reguły słowo „filtr” pozostawia istotną niejednoznaczność.

Zmiany w filtrowaniu modeli wdrażają podejście oparte na przecięciu. Mówiąc prosto, kandydat musi przejść przez uczestniczące ograniczenia. Późniejszy wynik nie może po prostu zastąpić wcześniejszego ograniczonego wyniku szerszym zbiorem.

Rozważmy hipotetyczną aplikację z zatwierdzonym modelem i wykluczonym modelem. Jej komponent polityki dopuszcza wyłącznie zatwierdzoną opcję. Oddzielny komponent rozliczeniowy rozpoznaje obie opcje, ponieważ wie, jak mierzyć ich użycie.

Odpowiedź rozliczeniowa dotyczy innego pytania. Wiedza o tym, jak mierzyć model, nie autoryzuje jego użycia. Jeśli aplikacja traktuje tę odpowiedź jako zastępstwo polityki, rozliczanie przypadkowo staje się decyzją dotyczącą dostępu.

Połączenie ograniczeń zachowuje to rozróżnienie. Aplikacja może wybrać model tylko wtedy, gdy odpowiednie komponenty zgodzą się, że pozostaje on dostępny. Komponent rozliczeniowy wnosi użyteczną informację, nie cofając wykluczenia operatora.

Ten przykład ilustruje logikę naprawy; nie jest dodatkowo zgłoszonym incydentem. Wyjaśnia też, dlaczego pozornie nieszkodliwe rozszerzenie może zmienić zachowanie aplikacji. Problem leży w sposobie łączenia odpowiedzi, a nie wymaga złośliwej intencji komponentu.

Reguła przecięcia tworzy konserwatywne oczekiwanie. Dodanie kolejnego ograniczającego filtra powinno zachować istniejące wykluczenia albo dalej zmniejszyć dostępność. Nie powinno przywracać opcji usuniętej przez inny mający zastosowanie filtr.

Konserwatywna kompozycja wprowadza jednak własne pytania operacyjne. Filtry mogą nie zgadzać się tak bardzo, że nie pozostanie żaden model. Aplikacje potrzebują zrozumiałego zachowania w takiej sytuacji, zwłaszcza gdy użytkownik oczekuje rozpoczęcia rozmowy.

Pusty wynik powinien skłonić do zbadania odpowiednich ograniczeń. Ciche podstawienie nieograniczonego modelu podważyłoby powód konserwatywnego łączenia filtrów. To implikacja architektoniczna, a nie twierdzenie, że to wydanie dodaje konkretną politykę awaryjną.

Kolejność również ma znaczenie przy ocenie projektu. Jeśli zmiana kolejności rejestracji wtyczek zmienia dostępność ograniczonych modeli, operatorzy mają do czynienia z niestabilną polityką. Ograniczenie nie powinno zależeć od szczegółu instalacji, którego nigdy nie zamierzali traktować jako ustawienia autoryzacji.

Szerszy punkt analityczny dotyczy odpowiedzialności. Wykrywanie odpowiada na pytanie, które modele oprogramowanie zna. Rozliczanie odpowiada na pytanie, które modele komponent może mierzyć. Autoryzacja odpowiada na pytanie, jakie opcje dopuszcza konkretna aplikacja.

Te odpowiedzialności mogą korzystać ze wspólnej infrastruktury implementacyjnej, nie stając się wymienne. Problemy pojawiają się, gdy wynik utworzony dla jednej odpowiedzialności po cichu staje się autorytatywny dla innej. Wyraźne reguły kompozycji czynią takie przeniesienie widocznym i możliwym do przeglądu.

W przypadku rozszerzalnych aplikacji AI wartość korekty wykracza zatem poza składnię listy modeli. Wyjaśnia ona, co komponent wnoszący wkład może zmienić. To fundament rozumowania o przyszłych kombinacjach bez odtwarzania od podstaw każdej interakcji.

Kontrole modeli znajdują się na różnych warstwach aplikacji

Porównywalne narzędzia ujawniają podobne obawy operatorów, lecz umieszczają egzekwowanie zasad w różnych częściach systemu. Dlatego architektura jest użyteczniejszym porównaniem niż lista funkcji.

Aktualna dokumentacja zarządzania modelami datasette-llm opisuje globalne listy modeli, blokowane modele, ustawienia domyślne i konfigurację specyficzną dla celu. Dokumentuje również punkty rozszerzeń dla filtrowania i obsługi użycia. Ponieważ jest to bieżąca dokumentacja rozwojowa, nie powinna automatycznie służyć jako historyczna specyfikacja dla każdego wcześniejszego wydania.

Wirtualne klucze LiteLLM oferują odmienne rozwiązanie. Dokumentacja opisuje kontrolę dostępu do modeli i śledzenie użycia związane z poświadczeniami wydawanymi przez serwer proxy — usługę działającą między klientami a dostawcami.

Porównanie jest ograniczone. Źródła te nie potwierdzają równoważnych gwarancji, identycznych wymagań wdrożeniowych ani potrzeby zastąpienia jednego produktu drugim. Pokazują różne miejsca, w których można wyrażać i stosować ograniczenia.

Integracja na poziomie aplikacji może podejmować decyzje blisko zadania użytkownika. Otaczające ją oprogramowanie rozumie, dlaczego żądany jest model. Ta bliskość może pomóc powiązać wybór modelu z interfejsem lub procesem pracy, który go prezentuje.

Bramka może umieszczać mechanizmy kontroli na wspólnej granicy usługi. Aplikacje wysyłające żądania przez tę granicę podlegają jej regułom. Pytanie architektoniczne brzmi, czy wszystkie istotne żądania rzeczywiście przechodzą przez usługę, która ma je egzekwować.

Żadne z tych miejsc nie eliminuje potrzeby analizy kompozycji. Aplikacja może nieprawidłowo łączyć kilka lokalnych ograniczeń. Szersze wdrożenie może również zawierać rozbieżności między tym, na co pozwala aplikacja, a tym, na co pozwala wspólna infrastruktura.

Użyteczne porównanie pyta zatem, gdzie decyzja staje się wiążąca. Ograniczone menu jest dowodem dotyczącym prezentacji. Odrzucenie przez aplikację jest dowodem dotyczącym obsługi żądania. Żądanie do dostawcy daje kolejną obserwację tego, co ostatecznie się wydarzyło.

Rozróżnianie tych obserwacji pomaga kupującym zadawać lepsze pytania. Demonstracja przełączania modeli nie potwierdza egzekwowania ograniczeń. Zrzut ekranu konfiguracji nie pokazuje, czy późniejsze komponenty zachowują jej wybory.

Deweloperzy oceniający którekolwiek z tych podejść powinni szukać jasno określonej odpowiedzialności za ograniczenia. Który komponent definiuje zatwierdzony zestaw? Który komponent może go zawęzić? W jakich udokumentowanych warunkach inny komponent może wprowadzić wyjątek?

Te pytania pozostają istotne nawet wtedy, gdy organizacje korzystają z kilku warstw jednocześnie. Aplikacja i bramka mogą nakładać uzupełniające się ograniczenia. Ich zasady nadal muszą być wystarczająco jasne, aby operator mógł wyjaśnić wynikający z nich dostęp.

Zespołom gromadzącym dowody dotyczące tych decyzji przeszukiwalna baza wiedzy może pomóc zachować uzasadnienie konfiguracji i historię przeglądów. Taka dokumentacja wspiera dochodzenie; kontrole w czasie działania ustalają, na co aplikacja faktycznie pozwala.

Wydanie nie rozstrzyga architektonicznego sporu. Dostarcza konkretny przykład, dlaczego wybrana architektura potrzebuje jawnej reguły łączenia ograniczeń — niezależnie od tego, gdzie te ograniczenia występują.

Co poprawka potwierdza, a co pozostaje nieudowodnione

Publicznie dostępne dowody potwierdzają konkretną wadę i jej korektę, ale nie rozstrzygają historycznego zakresu incydentu. To rozróżnienie powinno kierować zarówno relacjonowaniem sprawy, jak i reakcją operacyjną.

Wydanie i powiązany zapis prac rozwojowych opisują nadpisywanie skonfigurowanych ograniczeń. Opisują również naprawę i kontrole zgłoszone przez projekt. Łącznie materiały te zapewniają mocniejszą podstawę niż niewyjaśnione twierdzenie, że wybór modelu był nieprawidłowy.

Nie ustalają jednak, jak często zachowanie objęte problemem występowało w użyciu produkcyjnym. Akceptacja podczas kontroli rozwojowej jest dowodem dotyczącym zachowania aplikacji. Nie ujawnia historycznej liczby żądań ani nie identyfikuje każdego wdrożenia z odpowiednią kombinacją wtyczek.

Podobnie szersza dostępność modeli nie oznacza automatycznie, że prompty trafiły do niezamierzonego dostawcy. Taki wniosek wymaga dowodów dotyczących wyborów przesłanych przez użytkowników oraz żądań, które zostały zrealizowane. Zapis wydania nie zastępuje zapisów wdrożeniowych.

Istnieje również różnica między potencjalnym narażeniem na koszty a zmierzoną stratą. Ograniczenie modelu może służyć polityce użycia operatora. To, czy błąd spowodował dodatkowe zużycie w konkretnej instalacji, zależy od tego, co faktycznie zostało uruchomione.

Ta sama ostrożność dotyczy obsługi informacji. Nieoczekiwany cel miałby znaczenie, gdyby dotarły do niego wrażliwe treści. Dostępne dowody dotyczące wydania nie potwierdzają takiej sekwencji, a artykuł nie powinien zamieniać możliwej konsekwencji w zgłoszone zdarzenie.

Węższe ujęcie nie umniejsza znaczenia korekty. Ograniczenie, którego oprogramowanie nie zachowuje, zasługuje na naprawę jeszcze zanim ktoś wykaże dalsze szkody. Zapobieganie i pomiar incydentu odpowiadają na różne pytania.

Zgłoszoną walidację również należy odczytywać precyzyjnie. Pomyślne testy potwierdzają zachowanie, które testy te sprawdzają. Kontrola integracyjna dodaje dowody dotyczące konkretnej kombinacji. Żadna z nich nie stanowi niezależnego audytu każdej ścieżki w rozszerzalnej aplikacji.

Sceptyczny czytelnik może więc zaakceptować poprawkę, jednocześnie prosząc o potwierdzenie specyficzne dla wdrożenia. Takie stanowisko wynika z dowodów: projekt wyjaśnia prawdopodobny mechanizm awarii i odpowiadającą mu korektę, podczas gdy operatorzy zachowują odpowiedzialność za zainstalowane rozszerzenia.

Etykiety wersji wprowadzają kolejne praktyczne rozróżnienie. Identyfikator wydania informuje operatora, która kompilacja pakietu jest obecna. Nie opisuje każdego lokalnego ustawienia, zmiany zgodności ani dodatkowej wtyczki kształtującej końcowe zachowanie.

Dlatego ocena datasette-llm 0.1a10 wymaga czegoś więcej niż zobaczenia oczekiwanej wersji w inwentarzu. Istotne pytanie brzmi, czy aplikacja zachowuje zamierzone ograniczenia w warunkach napotykanych przez jej użytkowników.

Publicznego zapisu nie należy również rozciągać na szerszą narrację o bezpieczeństwie bez dodatkowych źródeł. Nie potwierdza on publicznego wykorzystania luki, ustandaryzowanego identyfikatora podatności ani niezależnej oceny. Takie twierdzenia wymagałyby własnych dowodów.

Uzasadniony wniosek pozostaje użyteczny i możliwy do wdrożenia. Opiekunowie projektu zidentyfikowali błąd łączenia, zmienili sposób współdziałania filtrów i zgłosili walidację. Historyczny wpływ oraz zapewnienie obejmujące całe wdrożenie pozostają odrębnymi tematami wymagającymi zbadania.

Co obserwować po poprawce filtrowania modeli

Najmocniejsze dalsze dowody będą dotyczyć zachowania zachowywanego w realistycznych wdrożeniach. W nadchodzących miesiącach na uwagę zasługują trzy sygnały, w określonej kolejności.

Po pierwsze, warto obserwować raporty wdrożeniowe pokazujące zgodność między zamierzonymi ograniczeniami a zaakceptowanymi żądaniami. Użyteczny raport opisywałby odpowiednią kombinację wtyczek i odróżniał widoczne wybory od wyborów akceptowanych podczas rozpoczynania rozmowy.

Takie dowody wzmocniłyby zaufanie, że korekta dociera do granicy aplikacji, z którą stykają się użytkownicy. Raporty o ponownym pojawianiu się wykluczonych modeli w porównywalnych warunkach osłabiłyby to zaufanie i wskazały konkretną interakcję wymagającą dalszego zbadania.

Istotnym sygnałem jest powtarzalne zachowanie, a nie ogólne stwierdzenie, że aktualizacja zadziałała. Operatorzy potrzebują wystarczającego kontekstu, aby zrozumieć, czy inny zespół testował podobną konfigurację, czy znacząco inną aplikację.

Po drugie, warto obserwować, czy przyszłe zmiany filtrów zachowują wykluczenia, gdy rozszerzenia są łączone. Korekta może być skuteczna dziś, a późniejsza funkcja może wprowadzić nową ścieżkę z innymi założeniami. Zmiany dotyczące wykrywania modeli, rozliczania lub wyboru zasługują na szczególną analizę.

Dowody, że te kombinacje utrzymują przewidywalne ograniczenia, wzmocniłyby wiarygodność projektu. Dowody, że kolejność rejestracji lub dodatkowe rozszerzenie poszerza dostęp, podważyłyby oczekiwanie ustanowione przez naprawę.

Sygnał ten dotyczy dyscypliny utrzymania, a nie częstotliwości wydań. Większa liczba wydań nie oznacza z natury lepszej kontroli. Jasne wyjaśnienia zmienionego zachowania dają operatorom solidniejszą podstawę do ustalenia, co wymaga kolejnej kontroli wdrożenia.

Po trzecie, warto obserwować dokumentację, która ułatwia zrozumienie pustych wyników, wyjątków i granic odpowiedzialności. Operatorzy powinni móc wyjaśnić, dlaczego model jest dostępny, bez zgadywania, który komponent dostarczył rozstrzygającą odpowiedź.

Jaśniejsza dokumentacja wzmocniłaby zaufanie do użyteczności systemu. Sprzeczne wyjaśnienia osłabiłyby je, zwłaszcza jeśli autorzy aplikacji nie mogą ustalić, czy komponent jedynie wykrywa modele, czy autoryzuje ich użycie.

Dla kupujących produkty AI sygnały te oferują praktyczny sposób oceny twierdzeń dotyczących kontroli modeli. Poproś o dowody łączące deklarowane ograniczenie z odrzuconym żądaniem. Następnie zapytaj, które zainstalowane komponenty uczestniczyły w tej decyzji.

Dla deweloperów trwałą kwestią jest kompozycyjność: czy niezależnie użyteczne komponenty zachowują zamierzone działanie po połączeniu. Integracje modeli potrzebują tej właściwości, ponieważ wybór, pomiar użycia i interfejsy aplikacji często współdzielą ten sam przepływ żądań.

Wydanie zapewnia konkretną korektę do zbadania, nie wspierając twierdzeń o ogólnobranżowym wskaźniku awarii ani uniwersalnym rozwiązaniu. Jego znaczenie opiera się na precyzyjnie określonej awarii i jasności zmienionej reguły.

Jeśli aplikacja zależy od ograniczonych wyborów modeli, porównaj jej zamierzoną politykę z obecnym zachowaniem, zanim uznasz aktualizację za zakończoną. Przechowuj razem odpowiednią konfigurację, wersje zainstalowanych wtyczek i zaobserwowane wyniki, aby inny opiekun mógł zrozumieć tę decyzję. Uwzględnij w tych dowodach wykluczony wybór, ponieważ pomyślne dozwolone żądanie odpowiada tylko na część pytania. Traktuj korektę datasette-llm 0.1a10 jako powód do zbadania, jak własne komponenty łączą swoje decyzje. Użytecznym rezultatem jest udokumentowane powiązanie między tym, na co pozwala zespół, a tym, co akceptuje działająca aplikacja. Zacznij od ograniczenia, od którego wdrożenie zależy najbardziej, i zweryfikuj, czy przetrwa ono całą ścieżkę żądania.

 
 

Zacznij bezpłatnie

Asystent AI działający przede wszystkim lokalnie, z funkcją zarządzania wiedzą osobistą

Aby zapewnić lepsze działanie AI,

remio obsługuje obecnie wyłącznie Windows 10+ (x64) i M-Chip Macs.

Twój partner AI w pracy
Zrób więcej z remio

Planuj. Twórz. Dostarczaj.
Wszystko w jednym miejscu.

bottom of page