Jina AI サービス
このPythonスクリプトは、APIキーとコマンドライン引数を使用してJina AIサービスとやり取りします。2つの主要なジョブをサポートしています:URLからコンテンツを取得し、検索クエリを実行します。スクリプトは、環境変数からJina APIキーを取得し、サービスへの安全なアクセスを確保します。requests
ライブラリを使用してHTTPリクエストを実行し、base64
を使用して検索クエリをデコードします。その後、スクリプトはJina AIサービスからの応答を表示します。
import os
import requests
from dotenv import load_dotenv
import argparse
import base64
load_dotenv()
api_key = os.environ.get("JINA_API_KEY")
if not api_key:
raise ValueError("JINA_API_KEY環境変数が設定されていません。")
parser = argparse.ArgumentParser()
parser.add_argument("--job", type=str, choices=['url', 'search'], help="実行するジョブ(urlまたはsearch)", required=True)
parser.add_argument("--input", type=str, help="ジョブの入力", required=True)
args = parser.parse_args()
if args.job == 'url':
url = f'https://r.jina.ai/{args.input}'
headers = {'Authorization': f'Bearer {api_key}'}
print(f"URL: {url}")
print(f"Headers: {headers}")
response = requests.get(url, headers=headers)
print(response.text)
elif args.job == 'search':
question = base64.b64decode(args.input).decode('utf-8', errors='ignore')
url = f'https://s.jina.ai/{question}'
headers = {
'Authorization': f'Bearer {api_key}',
'X-Engine': 'direct',
'X-Retain-Images': 'none'
}
print(f"URL: {url}")
print(f"Headers: {headers}")
response = requests.get(url, headers=headers)
print(response.text)
else:
print("--job urlまたは--job searchを指定してください")