Modelle
Richten Sie einen OpenAI-kompatiblen oder Anthropic-Endpunkt mit Basis-URL und gegebenenfalls API-Schlüssel ein. Testen Sie die Verbindung. Ein lokaler Modellserver muss laufen; entfernte Werkzeuge können Daten separat übertragen.
Ordne jeder Codepunktgrenze eines Textes mit höchstens 4096 Zeichen ihre UTF-16-Position zu.
def utf16_offsets(text):
if type(text) is not str or len(text) > 4096:
raise ValueError("bounded text")
offsets = [0]
for char in text:
value = ord(char)
if 0xD800 <= value <= 0xDFFF:
raise ValueError("unpaired surrogate")
offsets.append(offsets[-1] + (2 if value > 0xFFFF else 1))
return offsetsRichten Sie einen OpenAI-kompatiblen oder Anthropic-Endpunkt mit Basis-URL und gegebenenfalls API-Schlüssel ein. Testen Sie die Verbindung. Ein lokaler Modellserver muss laufen; entfernte Werkzeuge können Daten separat übertragen.
Prüfe Emoji und kombinierende Zeichen und lehne isolierte Surrogate ohne Normalisierung ab.
Vergleichen Sie das tatsächliche Verhalten mit dem erwarteten Ergebnis. Klären Sie fehlgeschlagene Prüfungen vor weiteren Änderungen.
def utf16_offsets(text):
if type(text) is not str or len(text) > 4096:
raise ValueError("bounded text")
offsets = [0]
for char in text:
value = ord(char)
if 0xD800 <= value <= 0xDFFF:
raise ValueError("unpaired surrogate")
offsets.append(offsets[-1] + (2 if value > 0xFFFF else 1))
return offsetsEine Editorintegration kann das falsche Zeichen hervorheben, selbst wenn beide Komponenten beim Text übereinstimmen. Die Abweichung kann darin liegen, was eine Position zählt. OffsetIlex bietet eine KI-Programmierumgebung für Windows, um diese Grenze zwischen Ihren Quellzeichenfolgen und einer API mit anderer Indexkonvention zu verfolgen.
Zeigen Sie dem verbundenen Modell bei einer UTF-16-Offset-Aufgabe Text mit einem Zeichen außerhalb der mehrsprachigen Basisebene und die erwarteten Grenzpositionen. Lassen Sie es Umwandlungshilfsfunktion und Aufrufer gemeinsam untersuchen. Stellen Sie klar, ob eingehende Positionen Codepunkte oder Codeeinheiten zählen, denn eine Hilfsfunktion ohne ihre Interpretation zu ändern kann eine weitere Abweichung erzeugen.
Prüfen Sie ungültigen Text und das Verhalten am Zeichenfolgenende als Teil desselben Patches. Eine Grenzzuordnung sollte am Ende ebenso wie zwischen Zeichen eine definierte Bedeutung haben; außerdem braucht die Anwendung eine Strategie für nicht unterstützte Surrogateingaben. Führen Sie gezielte Testfälle durch die tatsächliche Integration aus und vergleichen Sie die ausgewählten Bereiche, nicht bloß die Arraylänge der Hilfsfunktion.
OffsetIlex unterstützt konfigurierte OpenAI-kompatible oder Anthropic-Endpunkte. Ein verfügbares KI-Modell ohne Zensur kann die Quellcodeuntersuchung unterstützen; Kontextkapazität und Werkzeuge bestimmt der Server. Verwenden Sie möglichst repräsentativen synthetischen Text und prüfen Sie die Änderungen vor ihrer Übernahme anhand des API-Vertrags des Editors.
Verwenden Sie eine kurze Zeichenfolge mit gewöhnlichen Zeichen und einem Zeichen, das durch ein UTF-16-Surrogatpaar dargestellt wird. Markieren Sie die erwarteten Grenzen ausdrücklich. So wird eine Abweichung zwischen Codepunkten und Codeeinheiten ohne großes Dokument sichtbar.
Nein. Ein vom Nutzer wahrgenommenes Zeichen kann mehrere Codepunkte umfassen, während UTF-16 Codeeinheiten zählt. Geben Sie die Konvention jeder Komponente an. Lassen Sie das Modell die tatsächliche API-Grenze verfolgen, statt diese Begriffe als austauschbar zu behandeln.
Auswahlen und Einfügungen können am Ende der Zeichenfolge enden. Prüfen Sie, ob die Zuordnung diese Position darstellt und Aufrufer sie konsistent verwenden. Wer nur das erste Zeichen testet, kann einen Versatzfehler von eins in der Integration übersehen.
Wählen Sie eine ausdrückliche Strategie, die zur Hilfsfunktion und ihren Verbrauchern passt. Der gezeigte Kontext weist nicht unterstützte Surrogatwerte zurück. Prüfen Sie diesen Zurückweisungspfad und die Reaktion des Aufrufers, statt bei der Offset-Umwandlung stillschweigend Text zu ersetzen.
OffsetIlex · Aktualisiert 2026-10-25