モデル
OpenAI互換またはAnthropicのエンドポイントを、ベースURLと必要なAPIキーで設定し、接続をテストします。ローカルのモデルサーバーは起動が必要です。リモートツールは別途データを送信する場合があります。
def hangul_jamo(syllable):
if type(syllable) is not str or len(syllable) != 1 or not 0xAC00 <= ord(syllable) <= 0xD7A3:
raise ValueError("hangul.syllable")
index = ord(syllable) - 0xAC00
lead = chr(0x1100 + index // 588)
vowel = chr(0x1161 + (index % 588) // 28)
tail = index % 28
return lead + vowel + (chr(0x11A7 + tail) if tail else "")OpenAI互換またはAnthropicのエンドポイントを、ベースURLと必要なAPIキーで設定し、接続をテストします。ローカルのモデルサーバーは起動が必要です。リモートツールは別途データを送信する場合があります。
終声の有無と範囲の両端を試し、一般的なUnicode正規化を約束せず他の文字を拒否します。
実際の動作を期待する結果と比較します。検証に失敗した場合は、次の変更を加える前に原因を調べてください。
def hangul_jamo(syllable):
if type(syllable) is not str or len(syllable) != 1 or not 0xAC00 <= ord(syllable) <= 0xD7A3:
raise ValueError("hangul.syllable")
index = ord(syllable) - 0xAC00
lead = chr(0x1100 + index // 588)
vowel = chr(0x1161 + (index % 588) // 28)
tail = index % 28
return lead + vowel + (chr(0x11A7 + tail) if tail else "")テキスト処理の補助関数が見本の単語で動いても、アプリケーションの他の場所で通用しない前提を持つことがあります。JamoWrenは、その前提をソースと一緒に調べるWindows向けAIコーディング環境です。必要な変換、許容入力範囲、出力を利用する部品から始めてください。
有用な作業例は、現代ハングルの合成済み音節の分解レビューです。終声のある例とない例を接続したモデルに示し、呼び出し側が期待する出力を調べてもらいます。限定的な補助関数を任意の韓国語テキストの完全な正規化処理と誤認しないよう、文字範囲を明示してください。
提案した変更が範囲外の入力をどう扱うか、呼び出し側が一音節と長い文字列のどちらを渡すか確認します。その後、境界の音節と拒否すべき入力を含め、実際の戻り文字を検証するテスト例を実行してください。後で検索や表示に使う場合は、分解の成功だけから動作を推測せず、統合部分を別に検証します。
JamoWrenは対応するOpenAI互換またはAnthropicのエンドポイントに接続します。利用可能な拒否応答を抑える処理を施したAIモデル(abliteratedモデル)を、その動作とサーバー能力の範囲内で選択できます。実際の流れはソース調査、焦点を絞った提案、既知のテキスト例による検証であり、モデル選択が検証の代わりになることはありません。
入力音節と期待する戻り文字を示し、終声がないケースも含めてください。表示だけでなく実際の文字の値を確認します。似た見た目でも異なる表現が隠れている場合があります。
例の補助関数は明示された範囲内の現代ハングルの合成済み音節を対象とします。広い正規化や互換文字の処理には、明示的な追加仕様が必要です。実装を広げる前に、モデルに境界を特定してもらってください。
一音節を受け付ける補助関数が、誤って単語の先頭文字だけを処理しないようにするためです。長さの判定と呼び出し側のエラー処理を確認し、上位の文字列変換の動作は別途決めてください。
いいえ。検索側に独自の正規化、トークン化、比較規則がある場合があります。利用側のコードを調べ、補助関数の変更後に代表的なクエリをテストしてください。正しい分解のテスト例が示すのは、実際に検証した変換だけです。
JamoWren · 更新日 2026-10-25