設定

本ツールの設定について説明します。

はじめに

本ツールでは、設定によりツールの動作をカスタマイズします。

ツールの設定には以下の2通りの方法があります。

  • 設定ウィンドウ
  • settings.yaml

設定ウィンドウ

本項では、設定ウィンドウについて説明します。

ツール設定ファイル(settings.yaml)については ツール設定ファイル を参照してください。

メニューバーの Settings メニューを押すと設定ウィンドウ(Settings)が表示されます。

以下に本画面にて設定可能な各項目について簡単に説明します。

一般

ツール共通の設定
image

Service Provider / 利用サービス

利用する LLM のサービスプロバイダー

Model / モデル

利用する LLM のモデル

Force Terminate Game App / 通常終了に失敗した場合にゲームを強制的に終了

ゲームアプリが通常終了しない場合に強制終了するかどうか

Wait Time for Force Terminate (sec) / 強制終了を行うまでの猶予 (秒)

強制終了を実行するまでの待ち時間(秒)

Reset Window Size / ウィンドウサイズをリセット

変更したウィンドウサイズをリセットする

自動プレイ

自動プレイ関連の設定
image

Button Text / ボタンに含まれるテキスト

LLM に送信するアクション情報にテキスト情報を含めるかどうか

Executed Action History / 実行履歴情報

LLM に実行履歴情報を送信するかどうか

Text History Count / テキスト情報の履歴数

LLM に送信する履歴の数(テキスト情報)

Image History Count / 画像情報の履歴数

LLM に送信する履歴の数(画像)

Max Num of Trial / 最大問い合わせ回数

一回の自動プレイにおける LLM との送受信回数の上限

LLM Deny Action List / 不許可アクションリスト

Deny アクションリストのパス

LLM Allow Action List / 許可アクションリスト

Allow アクションリストのパス

Skip One Action UI / 操作対象が1つしかない場合はスキップする

アクションが 1 つしかない画面をスキップするかどうか

Skip LLM Step Threshold / 連続して LLM 抜きで操作する最大回数

アクションが 1 つしかない画面をスキップする場合に何回連続でスキップするか

Use Image / スクリーンショットを使用

LLM に画像を送信するかどうか

Image Fidelity / 画像解像度

LLM に送信する画像の解像度レベル(OpenAI API の fidelity 引数と同じ)

Max Image Resolution / 最大解像度

LLM に送信する画像の最大解像度

LLM Response Language / LLM の出力に使う言語

LLM からのレスポンスに指定する言語

Easy to Give Up / あきらめやすくする

自動プレイをあきらめやすくするかどうか

知識グラフ

知識グラフ関連の設定
image

Build Knowledge Graph When Task Success / タスク成功時に知識グラフを追加登録する

知識グラフを自動生成するかどうか

Use Knowledge Graph / 知識グラフを利用する

自動プレイの際に知識グラフを利用するかどうか

Knowledge Depth / グラフの深さ

知識グラフの深さ

画面遷移グラフ (Experimental)

画面遷移グラフ関連の設定
image

Use Graph / 画面遷移グラフを利用する

自動プレイの際に画面遷移グラフを利用するかどうか

Auto Add Graph / 自動プレイ時に自動で画面遷移グラフを追加登録する

自動プレイの際に未知の画面をグラフに追加するかどうか

ツール設定ファイル

本ツールのカスタマイズは主に設定ウィンドウで行いますが、より高度なカスタマイズを行う場合はツール設定ファイル(settings.yaml)を利用します。

settings.yaml の設定項目には、設定ウィンドウにある設定項目が全て含まれます。

settings.yaml はツールの初回起動時にデフォルト値で自動生成されます。

settings.yaml の設定内容をリセットするには、ファイルを削除して再度ツールを起動すればデフォルト値で自動生成されます。

本ファイルは、ツールのバージョンが一致する場合に限り、他のユーザーとも共有可能です。

以下は、デフォルト値で生成された settings.yaml の内容です。

# settings.yaml
game_binary_file_path: ''
game_binary_file_path_for_windows: ''
knowledge_graph_file_path: knowledge.json
adb_binary_file_path: ''
prev_android_activity: ''
prev_target_device: Android
window_size:
- 1250
- 800
allow_action_list: ./allow_lists/allow_list.yaml
deny_action_list: ./deny_lists/deny_list.yaml
is_use_allow_action_list: false
hash_texts: true
hash_texts_action_num: 1
hash_ui_name: false
hash_action_pos: false
hash_action_text: false
skip_no_action_ui: true
skip_one_action_ui: false
wait_max_time: 3.0
wait_stable_interval: 0.5
wait_stable_in_a_row: 2
force_terminate: false
wait_time_for_force_terminate: 3
dont_execute_binary: false
dont_execute_binary_for_windows: false
disp_cost: true
max_num_of_no_action_ui_in_a_row: 60
llm:
  service_provider: AzureOpenAIService
  model: ''
  model_openai: ''
  model_azure: ''
  model_anthropic: ''
  model_google: ''
  model_ai_and: ''
  info_changed_action: true
  info_executed_history: true
  is_use_button_text: true
  text_count: 3
  is_use_image: true
  mask_image_line_size: 2
  mask_image_font_size: 12
  max_image_resolution:
  - 768
  - 2048
  image_fidelity: high
  image_count: 2
  is_build_knowledge_graph: false
  is_use_knowledge_graph: false
  knowledge_depth: 2
  max_num_of_trial: 100
  skip_llm_step_threshold: 3
  llm_resp_lang: Japanese
  is_easy_to_give_up: true
  google_use_context_caching: true
  google_context_caching_ttl: 60
  is_optimize_prompt_caching: true
  is_pay_attention_action_dict: true
graph:
  is_use_graph: false
  is_use_auto_add_graph: false
  add_graph_execution_process_to_history: true
  graph_screen_w: 600
  graph_screen_h: 1000
  graph_action_radius: 40
  graph_ui_space: 1.2
  cluster_threshold: 0.5
  is_clone_action_results: true
  graph_data_path: ./graph_data
  graph_texts: false
  graph_action_text: true
  search_unvisited_action_mode: action_most
  search_visited_action: true
  get_action_random: true
  one_to_many: true
  check_end: true
  check_end_visited_rate: 0.9
  check_end_action_count: 100
  check_repeat: true
  check_repeat_max_pattern_length: 30
  check_repeat_max_repeat_count: 3
  center_image_scale_ratio: 0.6
  source_node_warning: true

以下に各設定項目について説明します。

ツール共通

game_binary_file_path

ゲーム実行形式ファイルのパス (未使用)

game_binary_file_path_for_windows

ゲーム実行形式ファイルのパス (Windows)

knowledge_graph_file_path

知識グラフファイルのパス

adb_binary_file_path

Android ADB のパス (Android)

prev_android_activity

前回接続した Android Activity (Android)

prev_target_device

前回接続したターゲットプラットフォーム

window_size

ツールのウィンドウサイズ

allow_action_list

Allow アクションリストファイルのパス

deny_action_list

Deny アクションリストファイルのパス

is_use_allow_action_list

Allow アクションリストを使用するかどうか

hash_texts

画面識別情報に画面のテキスト情報を含めるかどうか

hash_texts_action_num

画面識別情報に画面のテキスト情報を含めるかどうかのアクション数の閾値

hash_ui_name

画面識別情報に画面名を含めるかどうか

hash_action_pos

画面識別情報にアクションの座標情報を含めるかどうか

hash_action_text

画面識別情報にアクションのテキスト情報を含めるかどうか

skip_no_action_ui

アクションが存在しない画面をスキップするかどうか

skip_one_action_ui

アクションが 1 つしかない画面をスキップするかどうか

wait_max_time

画面安定状態を待つ最大時間(秒)

wait_stable_interval

画面安定状態をチェックする間隔(秒)

wait_stable_in_a_row

画面安定状態をチェックする回数

force_terminate

ゲームプロセスが通常終了しない場合に強制終了するかどうか

wait_time_for_force_terminate

強制終了を実行するまでの待ち時間(秒)

dont_execute_binary

ゲームバイナリを起動しないかどうか

dont_execute_binary_for_windows

ゲームバイナリを起動しないかどうか (Windows, 未使用)

disp_cost

コスト表示するかどうか

max_num_of_no_action_ui_in_a_row

アクションリストのない同じ画面が連続した回数の閾値

llm

LLM 関連

service_provider

利用する LLM のサービスプロバイダー

  • OpenAI
  • AzureOpenAIService
  • Anthropic

model

利用する LLM のモデル

model_openai

選択中のモデル(OpenAI)

model_azure

選択中のモデル(AzureOpenAIService)

model_anthropic

選択中のモデル(Anthropic)

model_google

選択中のモデル(Google)

model_ai_and

選択中のモデル(ai and)

info_changed_action

LLM にアクション変化情報を送信するかどうか

info_executed_history

LLM に実行履歴情報を送信するかどうか

is_use_button_text

LLM に送信するアクション情報にテキスト情報を含めるかどうか

text_count

LLM に送信する履歴の数(テキスト情報)

is_use_image

LLM に画像を送信するかどうか

mask_image_line_size

マスク画像の線幅

mask_image_font_size

マスク画像のフォントサイズ

max_image_resolution

LLM に送信する画像の最大解像度

image_fidelity

LLM に送信する画像の解像度レベル(OpenAI API の fidelity 引数と同じ)

image_count

LLM に送信する履歴の数(画像)

is_build_knowledge_graph

知識グラフを自動生成するかどうか

is_use_knowledge_graph

自動プレイの際に知識グラフを利用するかどうか

knowledge_depth

知識グラフの深さ

max_num_of_trial

一回の自動プレイにおける LLM との送受信回数の上限

skip_llm_step_threshold

アクションが 1 つしかない画面をスキップする場合に何回連続でスキップするか

llm_resp_lang

LLM からのレスポンスに指定する言語

  • English
  • Japanese
  • English and Japanese

is_easy_to_give_up

自動プレイをあきらめやすくするかどうか(自動プレイのみ)

google_use_context_caching: true

Google: コンテキストキャッシングを使用するかどうか

google_context_caching_ttl: 60

Google: コンテキストキャッシング TTL (分)

is_optimize_prompt_caching

Prompt Caching 用にプロンプトを最適化するかどうか(自動プレイのみ)

is_pay_attention_action_dict

アクション辞書に注意を払うかどうか(自動プレイのみ)

graph

画面遷移グラフ関連

is_use_graph

自動プレイの際に画面遷移グラフを利用するかどうか

is_use_auto_add_graph

自動プレイの際に未知の画面をグラフに追加するかどうか

add_graph_execution_process_to_history

グラフ実行プロセスを履歴に追加するかどうか

graph_screen_w

画面遷移グラフ生成時の画面サイズ

graph_screen_h

画面遷移グラフ生成時の画面サイズ

graph_action_radius

画面遷移グラフ描画時のアクションの半径

graph_ui_space

画面遷移グラフ描画時の画面の間隔

cluster_threshold

画面クラスタリングに用いる類似度の閾値

is_clone_action_results

同じクラスにアクション結果をクローンするかどうか

graph_data_path

画面遷移グラフデータの格納ディレクトリのパス

graph_texts

LLM による行き先判定に用いる情報に画面のテキスト情報を含めるかどうか

graph_action_text

LLM による行き先判定に用いる情報にアクションのテキスト情報を含めるかどうか

search_unvisited_action_mode

  • random: ランダム動作を行う
  • nearest: 最も近いクラスタを選択する
  • action_most: 最もアクションが多いクラスタを選択する
  • unvisited_action_most: 最も未訪問アクションが多いクラスタを選択する

search_visited_action

訪問済みアクションのトグルフラグを使用するかどうか

get_action_random

ランダムアクションを取得するかどうか

one_to_many

有向グラフで 1 対多のエッジを許容するかどうか

check_end

画面遷移グラフ自動生成の終了判定を行うかどうか

check_end_visited_rate

終了判定に用いる実行済みアクション数の割合の閾値

check_end_action_count

終了判定に用いる発見済みアクション数の下限

check_repeat

繰り返し判定を行うかどうか

check_repeat_max_pattern_length

繰り返し判定に用いる繰り返しパターンの長さの上限

check_repeat_max_repeat_count

繰り返し判定に用いる繰り返し回数の閾値

center_image_scale_ratio

フォーカスした際の画面の表示比率

source_node_warning

どこからもリンクされていない画面に警告マークを表示するかどうか