このトピックでは、Python エージェントでサポートされている Python のバージョン、サードパーティコンポーネント、およびフレームワークをリストアップします。
サポートされる Python バージョン
サポートされる Protobuf バージョン
Python エージェントは、レポートするデータをエンコードするために Protobuf を使用します。これは、ご利用のアプリケーションが使用する Protobuf のバージョンと競合する可能性があります。Python エージェントは、次の範囲の Protobuf バージョンと互換性があります:
"protobuf>=3.20.0, < 6.0"サポートされる OpenTelemetry API バージョン
Python エージェントの実装は、OpenTelemetry API 仕様に準拠しています。OpenTelemetry API のバージョンが異なると、わずかな差異が生じる場合があります。Python エージェントは、次の範囲の OpenTelemetry API バージョンをサポートしています:
"opentelemetry-api <= 1.35.0"注意事項
アプリケーションが uvicorn で起動する場合、次のいずれかの構成メソッドを選択してください。
メソッド 1:uvicorn のエントリファイルの最初の行に次の文を追加して、Python エージェントをインポートします。
from aliyun.opentelemetry.instrumentation.auto_instrumentation import sitecustomizeメソッド 2:uvicorn を gunicorn に置き換え、gunicorn コマンドに
aliyun-instrumentプレフィックスを追加します。例:
uvicorn app:app --workers 4 --port=9090 --host 0.0.0.0コマンドを次のように変更します:
aliyun-instrument gunicorn -w 4 -k uvicorn.workers.UvicornWorker -b 0.0.0.0:8000 app:app説明aliyun-instrument 命令は、ARMS Python エージェントの初期化と非侵入型イベントトラッキングを処理します。
アプリケーションが uWSGI で起動する場合は、「uWSGI で起動する Django または Flask プロジェクトに Python エージェントをインストールする」をご参照ください。
gevent コルーチンを使用する場合は、
GEVENT_ENABLE=true環境変数を設定する必要があります。たとえば、プログラムに次のコードが含まれている場合:
from gevent import monkey monkey.patch_all()次のように環境変数を設定する必要があります:
GEVENT_ENABLE=true
データベースフレームワーク
サポートされるプラグインバージョン
LLM (大規模言語モデル) アプリケーション
コンポーネント | PyPI/GitHub リポジトリ | 最小バージョン | 最大バージョン |
OpenAI | v1.0.0 | v1.109.1 | |
Dashscope | v1.0.0 | v1.2.1 | |
Llama-index | v0.10.5 | v0.10.43 | |
Langchain | v0.1.0 | v0.3.27 | |
Dify | v0.12.8 | v1.4.3 | |
Dify Plugin | 制限なし | 制限なし | |
MCP | v1.3.0 | v1.12.4 | |
Google ADK | v1.2.1 | 制限なし | |
RagFlow | v0.14.0 | v0.21.1 |
LLM (大規模言語モデル) サービス
コンポーネント | PyPI/GitHub リポジトリ | 最小バージョン | 最大バージョン |
vLLM V0 | v0.5.0 | v0.8.4 | |
vLLM V1 | V0.8.2 | V0.10.0 | |
SGLang | v0.4.6 | v0.4.9.post6 |
HTTP/RPC フレームワーク
コンポーネント | PyPI/GitHub リポジトリ | 最小バージョン | 最大バージョン |
FastAPI | v0.58 | 制限なし | |
asgiref | v3.0 | 制限なし | |
aiohttp | v3.0 | 制限なし | |
Django | v1.10 | 制限なし | |
WSGI | None | 制限なし | 制限なし |
Flask | v1.0 | 制限なし | |
Requests | v2.0 | 制限なし | |
gRPC | v1.42.0 | 制限なし | |
Jinja2 | v2.7 | < 4.0 | |
Click | v8.1.3 | < 9.0.0 | |
Tornado | v5.1.1 | 制限なし | |
BlackSheep | v1.2.0 | 制限なし |
ベクトルデータベース
コンポーネント | PyPI/GitHub リポジトリ | 最小バージョン | 最大バージョン |
milvus | v2.4.1 | 制限なし |
データベースフレームワーク
コンポーネント | PyPI/GitHub リポジトリ | 最小バージョン | 最大バージョン |
SQLAlchemy | v1.0.0 | < 2.1.0 | |
AsyncPG | v0.12.0 | 制限なし | |
aiopg | v0.13.0 | < 2.0.0 | |
PyMySQL | 特定のバージョン要件なし | < 2 | |
PyMSSQL | v2.1.5 | < 3 | |
psycopg | v3.1.0 | 制限なし | |
psycopg2 | v2.7.3.1 | 制限なし | |
MySQL | v8.0 | < 10.0 | |
MySQLClient | 特定のバージョン要件なし | < 3 | |
PyMongo | v3.1 | < 5.0 | |
TortoiseORM | v0.17.0 | 制限なし | |
Pydantic | v1.10.2 | 制限なし | |
DBAPI | 特定の依存関係なし | 特定のバージョン要件なし | 制限なし |
SQLite3 | 特定の依存関係なし | 特定のバージョン要件なし | 制限なし |
キャッシュプラグイン
コンポーネント | PyPI/GitHub リポジトリ | 最小バージョン | 最大バージョン |
Redis | v2.6 | 制限なし | |
PyMemcache | v1.3.5 | < 5 | |
Elasticsearch | v6.0 | 制限なし | |
Cassandra | v3.25 | 制限なし | |
Scylla | v3.25 | 制限なし |
メッセージキュープラグイン
コンポーネント | PyPI/GitHub リポジトリ | 最小バージョン | 最大バージョン |
Confluent Kafka | v1.8.2 | v2.7.0 | |
Kafka Python | 特定のバージョン要件なし | 制限なし | |
aiokafka | 特定のバージョン要件なし | 制限なし | |
Pika | 特定のバージョン要件なし | 制限なし | |
aio-pika | 特定のバージョン要件なし | 制限なし | |
Celery | v4.0 | < 6.0 | |
Remoulade | v0.50 | 制限なし |
その他のプラグイン
コンポーネント | PyPI/GitHub リポジトリ | 最小バージョン | 最大バージョン |
Threading | 特定の依存関係なし | 特定のバージョン要件なし | 制限なし |
Logging | 特定の依存関係なし | 特定のバージョン要件なし | 制限なし |
Loguru | v0.5.0 | v1.0 | |
asyncio | 特定の依存関係なし | 特定のバージョン要件なし | 制限なし |