Ograniczenie nie polegało na tym, aby model napisał wycenę.
Pojedynczy monit może utworzyć zdanie. Nie może ustalić, czy model systemu jest gotowy, zapewnić responsywność interfejsu, odróżnić wygenerowaną linię od historycznego cytatu, zapobiec przedostaniu się do biblioteki prawie duplikatu ani pozostawić produktu użytecznym, gdy wnioskowanie zakończy się niepowodzeniem. Cechą charakterystyczną są decyzje towarzyszące.
RiseHush nie ma zaplecza wnioskowania. Na obsługiwanych urządzeniach Apple Intelligence aplikacja wysyła ograniczony monit do modelu językowego systemu Apple na urządzeniu i przechowuje zaakceptowany wynik w lokalnym formacie SwiftData. Stronapoświęcona produktom wyjaśnia, co widzi dana osoba; artykuł ten dokumentuje ścieżkę wdrożenia i jej ograniczenia. Własny interfejs API dostępności firmy Apple pozostaje autorytetem decydującym o tym, czy model może teraz działać.
„Powtarzalność” oznacza, że inny inżynier może powtórzyć macierz gotowości, elementy odrzucające, ścieżki limitu czasu i kontrole trwałości. Nie oznacza to, że niedeterministyczny model języka będzie zwracał ten sam fragment po fragmencie. Ta strona przedstawia sprawdzoną architekturę źródłową, a nie świeże wskaźniki jakości urządzeń fizycznych; żaden wynik testu porównawczego nie jest wywnioskowany ze skryptu testowego.
- Wnioskowanie:Model języka systemu Apple na urządzeniu.
- Kontrakt wyjściowy:Typ Swift z przewodnikiem, następnie walidacja deterministyczna.
- Magazyn:Lokalne wiersze SwiftData oznaczone jako wygenerowane.
- Ścieżka sieciowa:Brak serwera generacji RiseHush lub modelu innej firmy.
Od podpowiedzi do biblioteki: ścieżka produkcyjna
To jest architektura generatora ofert RiseHush na urządzeniu, sprawdzona w bieżącym źródle aplikacji. Dokumentuje bramki, ścieżki awarii i kontrole, które programista może odtworzyć; nie jest to modelowy punkt odniesienia ani twierdzenie, że każdy projekt jest dobry.
Kolejność jest przemyślana. Tanie i łatwe do wyjaśnienia kontrole przeprowadzane są przed dalszymi wnioskowaniami; żaden zapis nie nastąpi, dopóki każda wymagana bramka nie zaakceptuje kandydata. Odpowiedź przesyłana strumieniowo to tymczasowy tekst interfejsu, a nie zapisany cytat.
Udowodnij gotowość
Usługa sprawdza dostępność modelu systemu i żądane ustawienia regionalne przed utworzeniem sesji. Kwalifikowalność urządzenia, stan Apple Intelligence, gotowość modelu i obsługa języków to osobne wyniki.
Ogranicz przeciąg
Typ @Generable Swift prosi o jedno oryginalne zdanie, zwykle 10–16 słów i nigdy więcej niż 18, bez przypisów, przecen, hashtagów, emoji i cudzysłowów.
Streamuj głównego aktora
Dla żądania przygotowywana jest świeża sesja LanguageModelSession. Częściowe migawki strukturalne mogą aktualizować interfejs, podczas gdy pętla Foundation Models pozostaje poza głównym aktorem.
Odrzuć oczywiste niepowodzenia
Przed jakąkolwiek oceną opartą na modelu bramka deterministyczna sprawdza limity zdań i słów, zgodność językową, zakazane fragmenty, otaczającą interpunkcję i wielojęzyczne stereotypy.
Testuj nowość i jakość
Gdy dostępne są osadzania porównawcze, osoby, które przeżyły, stają przed semantyczną oceną niemalże duplikatów, a następnie oddzielnym sędzią z przewodnikiem i oceną wyróżniającą. Wersja robocza przesyłana strumieniowo, która nie przekracza wymaganego progu, jest odrzucana, a nie dyskretnie utrwalana.
Utrzymuj ocalałego
Metadane są obliczane z dala od głównego aktora. Wstawienie SwiftData powraca do głównego aktora, oznacza linię jako wygenerowaną, a nie należącą do domeny publicznej, i wycofuje przejściowe wstawienia, jeśli zapisywanie się nie powiedzie.
Użyj ponownie stanu lokalnego
Powierzchnie aplikacji i systemu korzystają z zapisanej wyceny. Widżety odczytują utrwalone dane; nie budzą modelu języka na osi czasu rozszerzenia.
Wyjście sterowane zawęża kształt; code nadal jest właścicielem zasad
Wersja robocza jest typu Swift oznaczona@Generable. Jego przewodnik prosi o jedno oryginalne zdanie, zwykle 10–16 słów z twardym podpowiedzią maksymalnie 18, i zabrania podawania autorstwa, zawijania cudzysłowów, hashtagów, emoji, przecen i łamania wierszy. Opcje produkcyjne wykorzystują temperaturę 0,7 i pułap 40 żetonów: wystarczająco dużo miejsca na ustrukturyzowane opakowanie i krótkie zdanie, bez zachęcania do tworzenia treści o długości akapitu.
To nie sprawia, że walidacja jest opcjonalna. Apple opisuje generowanie kierowane jako sposób tworzenia uporządkowanych danych Swift, a nie gwarancję, że treść spełnia wszystkie zasady dotyczące produktu. Dlatego RiseHush traktuje wpisaną wartość modelu jako niezaufaną wersję roboczą. Skrócony szkic poniżej zachowuje kolejność produkcji i progi, pomijając szczegóły monitów i trwałości specyficzne dla aplikacji.
@Generable
private struct GeneratedQuoteDraft {
@Guide(description: "One original sentence; 10–16 words; no attribution")
var text: String
}
guard availability(locale: locale) == .available else {
throw GenerationError.unavailable
}
let stream = session.streamResponse(
to: prompt,
generating: GeneratedQuoteDraft.self,
options: generationOptions
)
for try await snapshot in stream {
yield(snapshot.content.text) // interface update
}
guard deterministicGate.passes(text, locale: locale),
await noveltyGate.isNearDuplicate(text) == false,
await judge.score(text).overall >= 6,
distinctiveness.score(text).overall >= 5
else {
throw GenerationError.noCandidate
}
return try persistAsGeneratedQuote(text)This is explanatory code, not a drop-in package. It intentionally omits app-private prompt construction, error mapping, and SwiftData model definitions.
Dlaczego drugie przejście wciąż nie wystarczyło
Pierwsza warstwa odrzucenia jest deterministyczna: puste dane wyjściowe, zakazane pozostałości podpowiedzi, cudzysłowy zawijające, limity słów i zdań, niezgodność językowa i wielojęzyczne stereotypy. Lokalny filtr smaku Core ML może dodać wyuczony sygnał dla języka angielskiego, niemieckiego, hiszpańskiego, francuskiego, włoskiego i portugalskiego; jest on celowo pomijany, a nie błędnie stosowany poza skalibrowanymi lokalizacjami.
Następnie, gdy dostępne są osadzania porównawcze, semantyczna bramka nowości porównuje kandydata z ograniczonym katalogiem lokalnym i odrzuca prawie duplikaty przy progu cosinusowatego podobieństwa wynoszącym 0,90. Jeśli katalog jest pusty lub nie można wykonać osadzenia, warstwa ta przechodzi, zamiast twierdzić, że jest nowość. Świeża sesja Foundation Models ocenia ogólną jakość, oryginalność i ciepło. Sędzia ten to osobna sesja wykorzystująca ten sam model systemu – a nie model niezależny i nie weryfikacja ręczna. Jeśli jest niedostępny, odmawia lub nie może wygenerować ustrukturyzowanego wyniku, wynik deterministyczny zapewnia ograniczone rozwiązanie awaryjne.
Wreszcie, wynik za wyróżniający charakter nagradza konkretne obrazy, działanie, specyfikę emocjonalną i sprawczość, jednocześnie karząc za formuły i niedawne negatywne kotwice. Akceptacja wymaga obecnie oceny co najmniej 6 punktów i charakteru odróżniającego co najmniej 5. Są to progi produktu, a nie dowód globalnej oryginalności lub bezpieczeństwa.
| Troska | Wdrożenie | Dlaczego istnieje |
|---|---|---|
| Dostępność | Sprawdź stan modelu i obsługę ustawień regionalnych przed każdą ścieżką generowania; zapisz, dlaczego gotowość nie powiodła się. | „Obsługa Apple Intelligence” nie oznacza, że model jest już gotowy i obsługuje aktywny język odwiedzającego. |
| Struktura | Użyj @Generable i @Guide dla kształtu wersji roboczej zamiast analizować wymyśloną odpowiedź JSON. | Typ Swift jest kontraktem wyjściowym, podczas gdy kod deterministyczny nadal jest właścicielem reguł produktu. |
| Współbieżność | Trzymaj strumieniowanie modeli i pracę z metadanymi z dala od głównego aktora; wróć tylko w celu zachowania trwałości modelu lokalnego. | Tura modeli podstawowych może zająć kilka sekund, podczas gdy obiekty modelu SwiftData pozostają powiązane z aktorem. |
| Jakość | Reguły deterministyczne warstw, nowość semantyczna, odrębny sędzia i progi odrębności. | Generacja kierowana zawęża kształt; nie gwarantuje prawdy, oryginalności, tonu ani jakości produktu. |
| Opóźnienie | Rozgrzewaj wstępnie tylko na powierzchniach pierwszego planu obsługujących generowanie i stosuj ograniczone budżety: 45 sekund w interfejsie, 20 dla Siri, 120 dla puli w tle. | Żądanie kierowane do użytkownika nie może czekać w nieskończoność na zasoby, limity szybkości lub powolną zmianę modelu. |
| Trwałość | Przechowuj zaakceptowane wiersze jako rekordy wygenerowane lokalnie, nigdy jako cytaty autora należące do domeny publicznej; wycofaj się po nieudanym zapisie. | Wygenerowane pismo wymaga trwałego pochodzenia i nigdy nie może dziedziczyć autorstwa prawdziwej osoby. |
Trzymaj modelkę odwróconą od głównego aktora
Usługa publiczna zwraca obiekty modelu SwiftData, więc jej punkty wejścia pozostają powiązane z głównym aktorem. Kosztowna pętla odpowiedzi Foundation Models tego nie robi. Każde żądanie posiada nową sesjęLanguageModelSession; przesyłanie strumieniowe i obliczanie metadanych uciekają od głównego aktora, z małymi wyraźnymi przeskokami dla sygnałów zachęty i trwałości związanych z aktorem.
Przesyłanie strumieniowe zapewnia częściowe ustrukturyzowane migawki interfejsu, a następnie ostateczny tekst przechodzi przez tę samą bramkę, paski nowości, oceny i wyróżnialności, co ścieżka puli. Ukończony strumień przepływa przez aktorów według trwałego identyfikatora, zamiast przenosić model SwiftData, którego nie można wysłać. Obiekt wywołujący rozpoznaje ten identyfikator na własnym aktorze.
Wstawiony zostanie tylko zaakceptowany tekst. Rekord ma nazwę RiseHush i jest oznaczony jakosource = .generatediisPublicDomain = false, oznaczony tagiem regionalnym i wzbogacony lokalnie obliczonymi metadanymi. Jeśli zapisywanie nie powiedzie się, wstawki przejściowe zostaną usunięte, zanim błąd powróci.
Unieruchom portiera za pomocą trzech narzędzi tylko do odczytu
Ask RiseHush nie może wymyślać stanu biblioteki danej osoby. Interfejs API wywoływania narzędzi firmy Apple umożliwia żądanie sesji zawężenia funkcji aplikacji i uwzględnienie zwróconych przez nie danych. Aplikacja udostępnia trzy ograniczone narzędzia tylko do odczytu; żaden nie dociera do serwera RiseHush.
Argumenty narzędzi i rozmiary wyjściowe są ograniczone. Wyszukiwanie zapisanych ofert zwraca maksymalnie osiem wyników, wyszukiwanie w katalogu maksymalnie pięć, a łączna wydajność narzędzia jest ograniczona. Narzędzie zapisanych ofert może zwracać ostatnio pasujące elementy, ale nie akceptuje zakresu kalendarza — zatem produkt nie powinien obiecywać, że model będzie w stanie odpowiedzieć na pytanie „Co zaoszczędziłem w zeszłym tygodniu?”
Wyszukiwanie ofert w katalogu
Przeszukuje dołączony katalog ofert według nastroju, kategorii lub tematu. Nie wymaga od modelu wymyślenia źródła.
Zapisane wyszukiwanie ofert
Wyszukuje zapisane i ulubione cytaty danej osoby w pamięci lokalnej.
Stan smugi
Czyta pasmo lokalnych inspiracji, dzięki czemu Ask RiseHush może odpowiedzieć na ograniczone osobiste pytanie.
Zachowanie w przypadku awarii jest częścią architektury
Dostępność nie jest wartością logiczną. Na zgodnym urządzeniu nadal może być wyłączona funkcja Apple Intelligence, przygotowywane zasoby modelu lub język, którego model systemu nie obsługuje. Generowanie w czasie wykonywania może również odmówić, napotkać barierę ochronną, przekroczyć kontekst, zostać ograniczone, napotkać współbieżne żądanie, zakończyć się niepowodzeniem analizy strukturalnej lub przekroczyć limit czasu.
RiseHush odwzorowuje te przypadki na skończone zachowanie produktu. Generowanie na pierwszym planie ma budżet 45 sekund, Siri 20 sekund, a generowanie puli w tle 120 sekund. Wyselekcjonowana biblioteka pozostaje uczciwym rozwiązaniem; aplikacja nigdy nie przechowuje prozy zastępczej, tak jakby model się powiódł.
| Sygnał | Zachowanie |
|---|---|
| Urządzenie nie kwalifikuje się lub usługa Apple Intelligence jest wyłączona | Generacja jest niedostępna. Istniejąca wybrana biblioteka pozostaje użyteczna bez udawania, że wystąpiła odpowiedź modelu. |
| Zasoby modelu nie są gotowe | Żądanie zgłasza stan braku gotowości. Gdy dostępne są zasoby modelu Apple, samo wnioskowanie nie wymaga serwera RiseHush. |
| Żądane ustawienia regionalne nie są obsługiwane | Ścieżka obsługująca tłumaczenie może w pełni otworzyć wersję roboczą w języku angielskim i przetłumaczyć ją lokalnie, jeśli platforma tłumaczeniowa Apple obsługuje tę parę; w przeciwnym razie aplikacja zachowa wybrane rozwiązanie awaryjne. Przetłumaczony tekst jest sprawdzany pod kątem niepustego wyniku, ale nie powtarza pełnej bramki języka docelowego, nowości i stosu sędziego. |
| Poręcz, odmowa, limit szybkości, analizowanie, kontekst, współbieżność lub błąd przekroczenia limitu czasu | Ścieżka przesyłania strumieniowego nie obraca się w ramach nieograniczonej ponownej próby wbudowanej. Nie zwraca żadnego wygenerowanego kandydata i pozwala produktowi na czysty powrót. |
| Wersja robocza nie spełnia progu jakości | Ścieżka skończonej puli może wypróbować inną wersję roboczą; transmisja na żywo zostaje przerwana, zamiast animować drugą odpowiedź. Odrzucony tekst nie jest zapisywany. |
| Zapis SwiftData nie powiódł się | Usługa usuwa przejściowe wstawki i wyświetla błąd trwałości, zamiast pozostawiać częściowo zapisaną wycenę. |
Protokół odtwarzalności, bez wymyślonych wyników
Poniższy protokół oddziela kontrolę źródła od sprawdzenia działania urządzenia. Rejestruj sprzęt, kompilację systemu operacyjnego, lokalizację, stan Apple Intelligence, gotowość modelu, monitowanie, czas, który upłynął, gałąź terminala, przyczynę odrzucenia i wynik trwałości dla każdego uruchomienia. Instrumenty Apple Foundation Models Instruments mogą ujawniać zachowanie podpowiedzi, narzędzi, tokenów i opóźnień podczas prawdziwej sesji.
Wersja do odczytu maszynowego jest dostępna jako protokół oceny modeli podstawowych(JSON). Zawiera matrycę i kontrakt pola, a nie sfabrykowane pomiary. Po zatwierdzeniu bieżącego uruchomienia na urządzeniu fizycznym dołącz jego anonimowe wiersze i opublikuj zbiorcze wartości akceptacji, limitu czasu i opóźnienia z dokładnym określeniem urządzenia i systemu operacyjnego.
- Używaj kompatybilnego sprzętu z obsługiwanym systemem operacyjnym. Przetestuj, czy Apple Intelligence jest włączone i gotowe, wyłączone i nadal pobiera.
- Powtórz tę czynność z obsługiwanymi i nieobsługiwanymi ustawieniami regionalnymi; sprawdź, czy aplikacja odróżnia obsługę modeli od ogólnej kwalifikowalności urządzenia.
- Gdy zasoby modelu będą gotowe, powtórz czynność w trybie samolotowym i potwierdź, że nie jest wymagany żaden punkt końcowy generowania RiseHush.
- Obserwuj częściowy tekst podczas interakcji z interfejsem; potwierdź, że przewijanie i elementy sterujące reagują podczas obrotu modelu.
- Udostępniaj elementy treści, które są puste, składają się z wielu zdań, są zbyt długie, ujęte w cudzysłów, są napisane w niewłaściwym języku, są banalne lub prawie powielone; żaden nie powinien zostać zapisanym wygenerowanym wierszem.
- Uruchomienie odrzucenia przez sędziego i skończonego limitu czasu; potwierdź, że żadna odrzucona wersja robocza nie została utrwalona, a wybrane środowisko pozostaje dostępne.
- Wymuś błąd lokalnego zapisu w sklepie testowym; potwierdź, że wstawione modele zostały wycofane.
- Wypróbuj Siri z jej krótszym budżetem czasowym i sprawdź, czy widżety czytają tylko utrwalone dane, a nie rozpoczynają generowanie w rozszerzeniu.
Czego ta architektura nie udowadnia
Potok wysokiej jakości może uwidocznić awarię i zmniejszyć złą trwałość. Nie może zamienić małego modelu językowego znajdującego się na urządzeniu w źródło historyczne, udowodnić, że zdanie nigdy nigdzie nie zostało napisane, ani zagwarantować smaku. Wygenerowane wiersze nigdy nie są zatem przypisywane autorom historycznym i nigdy nie trafiają do katalogu domeny publicznej.
Tłumaczenie zasługuje na osobne ostrzeżenie. W przypadku ustawień regionalnych nieobsługiwanych bezpośrednio przez Foundation Models opcjonalna ścieżka w pełni obejmuje wersję roboczą w języku angielskim, a następnie korzysta z platformy tłumaczeń Apple na urządzeniu, jeśli para jest dostępna. Przetłumaczony wynik jest sprawdzany pod kątem niepustej odpowiedzi i utrwalany z nowymi metadanymi, ale obecnie nie powtarza pełnej bramki języka docelowego, nowości i sekwencji oceniającej po tłumaczeniu. Ścieżka ta stanowi rozwiązanie awaryjne, a nie dowód na jednakową jakość wytwarzania bezpośredniego.
Aktualizacje modelu i systemu operacyjnego mogą zmienić dostępność, opóźnienia, zachowanie odmowy i dystrybucję danych wyjściowych. Firma Apple zaleca ponowne sprawdzanie podpowiedzi i ocen w przypadku zmian w modelach podstawowych. Dlatego matrycę testową RiseHush należy ponownie uruchomić po aktualizacjach platformy materialnej, zamiast traktować tę stronę jako stały dowód porównawczy.
- Model systemu nie jest wykorzystywany jako źródło cytatów historycznych ani atrybucji autora.
- Ustrukturyzowane dane wyjściowe i drugi przebieg modelu redukują tryby awarii; nie dowodzą, że linia jest głęboka, oryginalna w sensie globalnym, czy odpowiednia dla każdego.
- Warstwa nowości semantycznej przechodzi, gdy jej ograniczony katalog jest pusty lub osadzanie porównawcze jest niedostępne; zmniejsza liczbę znanych niemal duplikatów, ale nie potwierdza globalnej oryginalności.
- Generowanie offline zależy od kompatybilnego sprzętu, włączonej funkcji Apple Intelligence, obsługiwanego zachowania językowego i gotowych zasobów modelu.
- Opcjonalny, wyuczony filtr smaku Core ML jest skalibrowany dla języka angielskiego, niemieckiego, hiszpańskiego, francuskiego, włoskiego i portugalskiego; inne lokalizacje nadal otrzymują warstwy deterministyczne i oparte na modelach, które je obsługują.
- Lokalnie przetłumaczona wersja zastępcza nie jest równoznaczna z bezpośrednim generowaniem języka docelowego: bieżący wynik tłumaczenia nie powtarza każdej warstwy jakości po tłumaczeniu.
- Aktualizacje systemu operacyjnego i modelu mogą zmieniać opóźnienia i dystrybucję danych wyjściowych, dlatego po zmianie platformy materialnej należy ponownie uruchomić matrycę urządzenia.
- Ta strona opisuje obecną architekturę, a nie obietnicę, że na każdej platformie działają modele Foundation Models. Widżety celowo korzystają z utrwalonych wyników.
Czy RiseHush wysyła monity o wygenerowanie wyceny na swój własny serwer?
Nie. Na obsługiwanych urządzeniach, na których dostępny jest model systemu, wersja robocza wyceny i karty jakości działają w oparciu o platformy Apple na urządzeniu. RiseHush nie ma punktu końcowego wnioskowania dla tej ścieżki.
Czy @Generable gwarantuje dobrą i oryginalną wycenę?
Nie. Ogranicza kształt ustrukturyzowanych wyników. RiseHush w dalszym ciągu stosuje deterministyczne reguły formatowania i języka, semantyczne wykrywanie niemal duplikatów, gdy dostępne są osadzania porównawcze, osobną sesję oceniania, punktację wyróżniającą i skończone zachowanie odrzucenia.
Czy inny programista może odtworzyć dokładnie wygenerowane zdanie?
Niezawodnie. Dane wyjściowe modelu językowego są niedeterministyczne i mogą się zmieniać wraz z aktualizacjami modelu lub systemu operacyjnego. Powtarzalną jednostką jest protokół gotowości, urządzenia, bramki, limitu czasu i trwałości – a nie identyczna proza.
Czy każdy obsługiwany język otrzymuje identyczną ścieżkę jakości?
Nie. Bezpośrednio obsługiwane lokalizacje otrzymują wspólną ścieżkę generowania, podczas gdy wyuczony filtr Core ML jest skalibrowany dla sześciu języków. Opcjonalna, lokalnie przetłumaczona wersja zastępcza zaczyna się od zamkniętej wersji roboczej w języku angielskim, ale nie powtarza każdej warstwy jakości języka docelowego po tłumaczeniu.
- Apple Developer Documentation — Foundation Models framework overview: direct access to Apple’s on-device language model
- Apple Developer Documentation — SystemLanguageModel availability and unavailable reasons
- Apple Developer Documentation — supporting languages and locales with Foundation Models
- Apple Developer Documentation — generating Swift data structures with guided generation
- Apple Developer Documentation — LanguageModelSession, responses, and streaming
- Apple Developer Documentation — expanding generation with tool calling
- Apple Developer Documentation — improving the safety of generative model output
- Apple Developer Documentation — analyzing Foundation Models runtime performance
- Apple Developer Documentation — Foundation Models framework updates
- Apple Developer Documentation — SwiftData
- Apple Developer Documentation — Translation framework
