著者:関 勝寿
公開日:2025年2月14日
キーワード: science python

英語論文の文法校正にAIを使う場合に、論文全体を一気に1度のプロンプトで与えるのは長すぎるため、multiai によって効率的に作業することとした。その方法のまとめ。

  1. 原稿をテキストファイルで保存する。ファイル名は manuscript.txt とする。文字コードはUTF-8とする。文献リストなど不要な箇所は削除する。
  2. multiai のマニュアル に従って multiai をインストールし、APIキーを設定する。
  3. 以下の Python プログラムを edit.py として保存する。ここでは Anthropic の claude-3-5-sonnet-latest を使っているので、モデルを変える場合には適宜プログラムを編集する。
  4. python3 edit.py > edit.txt とすることで、edit.txt に校正結果が出る。このとき、30文字以内の行はセクションとみなされて === で囲まれる。校正された箇所は ** で囲まれて示される。細かい挙動はプログラムを直接編集して調整する。
import multiai
import sys
FILE = 'manuscript.txt'
ANTHROPIC_MODEL = 'claude-3-5-sonnet-latest'


def main():
    with open(FILE) as f:
        for line in f:
            line = line.strip()
            if len(line) < 30:
                if len(line) > 1:
                    print(f'=== {line} ===')
            else:
                edit(line)


def edit(line):
    prompt = f'Check clarity and grammer of the following paragraph and improve it. Show only the result. Please identify exact modified locations by surrounding by ** **. For example, by correcting "He love me.", show "He **loves** me."\n\n{line}'
    client = multiai.Prompt()
    client.set_model('anthropic', ANTHROPIC_MODEL)
    result = client.ask(prompt)
    print(result)


if __name__ == "__main__":
    main()