Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Począwszy od października 2026 r., dane wyjściowe z niektórych interfejsów API w przestrzeni nazw Microsoft.Windows.AI.Text zawierają niewidoczny znak wodny wskazujący, że tekst jest generowany przez sztuczną inteligencję. Jeśli aplikacja przetwarza wygenerowany tekst, weź pod uwagę obecność znaku wodnego podczas renderowania, analizowania lub konwertowania odpowiedzi.
Ostrzeżenie
Odpowiadasz za zapewnienie, że aplikacja spełnia wymagania dotyczące oznaczania zawartości wygenerowanej przez sztuczną inteligencję, która ma do niej zastosowanie. Przed usunięciem automatycznie wstawionego znaku wodnego należy wziąć pod uwagę te wymagania.
Aby uzyskać informacje o obsługiwanych wersjach systemu Windows, wymaganiach sprzętowych i instrukcjach konfiguracji tych interfejsów API, zobacz Wprowadzenie do tworzenia aplikacji za pomocą interfejsów API AI systemu Windows i Obsługiwany sprzęt dla Phi Silica.
Interfejsy API, które automatycznie dodają znak wodny
Następujące interfejsy API w przestrzeni nazw Microsoft.Windows.AI.Text automatycznie zawierają znak wodny wskazujący, że tekst jest generowany przez sztuczną inteligencję:
- LanguageModel.GenerateResponseAsync
- LanguageModel.GenerateResponseFromEmbeddingsAsync
- TextRewriter.RewriteAsync
- TextRewriter.RewriteCustomAsync
- TextSummarizer.SummarizeAsync
- TextSummarizer.SummarizeConversationAsync
- TextSummarizer.SummarizeParagraphAsync
Mechanizm znakowania wodnego
Znak wodny to sekwencja czterech punktów U+200B U+034F U+2060 U+200Bkodu Unicode w następującej kolejności:
| Position | Punkt kodu | Nazwa Unicode |
|---|---|---|
| 0 | U+200B | ZERO WIDTH SPACE |
| 1 | U+034F | ŁĄCZNIK GRAFEMOWY ŁĄCZĄCY |
| 2 | U+2060 | WORD JOINER |
| 3 | U+200B | ZERO WIDTH SPACJA |
Interfejsy API używają heurystyki do decydowania, czy i gdzie należy wstawić znak wodny. Odpowiedź może zawierać zero, jedną lub wiele kopii sekwencji. Heurystyka unika wstawiania znaku wodnego w miejscach, w których mogłoby to wpłynąć na łamanie słów.
Lokalizacje znaku wodnego mogą się różnić w zależności od odpowiedzi. Heurystyka zmienia się również w czasie, więc nie polegaj na stałej lokalizacji znaku wodnego ani zakładaj, że każda odpowiedź zawiera sekwencję.
Obsłuż dane wyjściowe ze znakiem wodnym
Renderowanie tekstu i interakcja
Większość mechanizmów renderowania tekstu nie wyświetla tych punktów kodu. Mogą jednak mieć wpływ na zaznaczenie tekstu i ruch kursora.
Ustrukturyzowane i sformatowane dane wyjściowe
Znak wodny może powodować problemy, gdy aplikacja korzysta z ustrukturyzowanych lub sformatowanych danych wyjściowych z interfejsów API, których dotyczy znak wodny. Oto kilka przykładów:
- Formatowanie przy użyciu Markdown
- Generowanie kodu lub znaczników, takich jak HTML lub CSS.
- Generowanie kodu JSON, a następnie analizowanie go.
Upewnij się, że logika analizowania może obsługiwać sekwencję znaku wodnego wszędzie tam, gdzie występuje w odpowiedzi, w tym odpowiedzi z wieloma wystąpieniami. Przed usunięciem znaku wodnego należy wziąć pod uwagę wymagania aplikacji dotyczące oznaczania zawartości wygenerowanej przez sztuczną inteligencję.
Kodowanie znaków
Większość stron kodowych innych niż Unicode nie może reprezentować znaku wodnego. W zależności od używanego interfejsu API konwersji konwertowanie odpowiedzi na jedną z tych stron kodowych może powodować błędy, znaki rezerwowe lub inne nieoczekiwane znaki. Uwzględnij to zachowanie, gdy aplikacja konwertuje lub eksportuje wygenerowany tekst.