iiiで文書AIの裏側を作る
How to Build a Document Intelligence Backend with iii Using Workers, Functions, and Cron Triggers

iiiというツールを使い、文書を自動で賢く処理する仕組みの作り方が公開されました。これにより、効率的な文書分析システムを構築できます。
このチュートリアルでは、iii を使って文書インテリジェンスのワークフローを構築します。まず、iii エンジンとPython SDKをインストールし、エンジンをバックグラウンドプロセスとして起動し、Python workerを接続します。セットアップ後、テキストの正規化、トークン化、感情分析、キーワード抽出、レポート作成、ハートビート追跡のために個別のfunctionを登録します。次に、これらのfunctionを単一の分析パイプラインに結合し、直接呼び出し、HTTPエンドポイント、fire-and-forget実行、およびスケジュールされたcron triggerを介して同じロジックを実行します。その過程で、基本的なランタイム状態も追跡し、ワークフローが静的なノートブックデモよりも実際のバックエンドシステムに近いものに感じられるようにします。完全なコードはこちらで確認できます。Copy Code Copied Use a different Browser import os, sys, subprocess, time, socket, json, threading from collections import Counter HOME = os.path.expanduser("~") BIN_DIR = f"{HOME}/.local/bin" os.environ["PATH"] = BIN_DIR + os.pathsep + os.environ.get("PATH", "") def sh(cmd): print(f"$ {cmd}") subprocess.run(cmd, shell=True, check=True) if not os.path.exists(f"{BIN_DIR}/iii"): sh(f"curl -fsSL https://install.iii.dev/iii/main/install.sh | BIN_DIR={BIN_DIR} sh") sh(f"{sys.executable} -m pip install -q iii-sdk requests") III = f"{BIN_DIR}/iii" sh(f"{III} --version")
まず、必要なPythonモジュールをインポートし、IIIエンジンのローカルバイナリパスを設定します。シェルコマンドを実行するための小さなヘルパーfunctionを定義し、IIIエンジンがまだ利用できない場合はインストールします。また、Python SDKとrequestsパッケージもインストールし、iiiのバージョンを確認してインストールを検証します。
Copy Code Copied Use a different Browser WS_URL, HTTP_URL = "ws://localhost:49134", "http://localhost:3111" engine_log = open("/tmp/iii-engine.log", "w") engine = subprocess.Popen([III, "--use-default-config"], stdout=engine_log, stderr=subprocess.STDOUT) def wait_port(host, port, timeout=90): end = time.time() + timeout while time.time() < end: with socket.socket() as s: s.