【OmniParser】全デバイスのUIを正確に分析できるMicrosoft製AIツール!

WEELメディア事業部LLMリサーチャーの2scです。

2024年10月8日、天下のMicrosoftがUIを分析してくれるAIツール「OmniParser」を公開しました。

このOmniParserはGPT-4V等と組み合わせて使うツールなのですが、なんと端末やプラットフォームを問わずUIの位置と意味が把握できちゃうんです!

Xでの投稿のいいね数は、すでに3,000を超えており、今後の展望に期待が寄せられています。

この記事ではOmniParserの使い方や、有効性の検証まで行います。本記事を熟読することで、OmniParserの凄さを理解し、業務自動化に役立てられるかもしれません。

ぜひ、最後までご覧ください。

目次

OmniParserの概要

「OmniParser」はMicrosoftが開発したUI(ユーザーインターフェース)分析用のAIツール。GPT-4V等のマルチモーダルLLMと組み合わせることで、UIのスクリーンショットに含まれる各要素(アイコン・ボタン・タブ…etc.)の意味を正確に捉えてくれます。このOmniParserのすごいところとしては、下記のとおりです。

OmniParserのすごいところ
  • UIを独自の構造化データに変換、HTMLコードやビュー階層に惑わされず見たままを分析可能
  • UI内の各要素を検出する能力に優れていて、各要素の位置と意味を把握可能(その後の操作にも反映可)
  • GPT-4Vの他、Phi-3.5-VやLlama-3.2-VといったマルチモーダルLLMとの連携に対応
  • ScreenSpotやMind2Web、AITW等のベンチマークで従来型のGPT-4V搭載エージェントを凌駕
    • Mind2Web:HTMLコードの分析に特化したAIエージェントに勝利
    • AITW:Androidアイコンの検出に特化したAIエージェントに勝利

そんなOmniParserは端末やプラットフォームの種別を問わず適用可能で……

以上のとおり、UI中各要素の位置と意味を捉えてくれます。

OmniParserのライセンス

OmniParserは「CC-BY-4.0 ライセンス」のもと、特許使用以外の用途、つまり商用利用や改変が許可されています。

利用用途可否
商用利用⭕️
改変⭕️
配布⭕️
特許使用❌(別途申請が必要)
私的使用⭕️
参考:https://github.com/microsoft/OmniParser?tab=CC-BY-4.0-1-ov-file

ただし、改変・配布等には条件があって「制作者の識別情報」「著作権表示」「ライセンスへのリンクまたはURL」の明記が必要。その際には、下記のクレジット表記を添えておきましょう。

クレジット表記

@misc{lu2024omniparserpurevisionbased,
title={OmniParser for Pure Vision Based GUI Agent},
author={Yadong Lu and Jianwei Yang and Yelong Shen and Ahmed Awadallah},
year={2024},
eprint={2408.00203},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2408.00203},
}

なお、MacのUI操作に特化したAIエージェントについて詳しく知りたい方は、下記の記事を合わせてご確認ください。

OmniParserの使い方

ここでは、GitHubのREADMEで紹介されているOmniParserの使い方をお見せします。

手始めに、下記を実行してOmniParserを動かすための環境(Python3.12以上)を用意しましょう!

conda create -n "omni" python==3.12
conda activate omni
pip install -r requirements.txt

続けて下記を実行し、OmniParserのチェックポイントファイルをダウンロードします。

git clone https://huggingface.co/microsoft/OmniParser

ここでダウンロードしたファイルについては、以下のとおりweights/フォルダに配置してください。

- `weights/icon_detect`
- `weights/icon_caption_florence`
- `weights/icon_caption_blip2`

今度は下記も実行して、モデルのsafetensorファイルを.ptファイルに変換しましょう。

python weights/convert_safetensor_to_pt.py

あとは以下のコードを実行することで、GradioによるOmniParserのデモ版が使えるそうです。

python gradio_demo.py

OmniParserのデモ動画については、以下です。

参考:https://microsoft.github.io/OmniParser/
参考:https://microsoft.github.io/OmniParser/

以上のとおりとなっています。

まだ当メディアで検証・確認を行なっていないため、この方法で動かないかもしれません。

OmniParserでいろんな有名サイトのトップページを解析してみた

GitHubのREADMEで紹介されているOmniParserの使い方では、google colaboratoryでうまく実装することができません。

ここからはgoogle colaboratoryで実装する方法をお伝えしつつ、いろんな有名サイトのトップページをOmniParserで解析してみたいと思います!

■Pythonのバージョン
Python 3.12以上(GitHubには3.12以上と書かれていますが、3.8でも動作しました)

■使用ディスク量
48.7GB

■システムRAMの使用量
7.5GB

■GPU RAMの使用量
11.1GB

まずはHugging Faceからモデルをダウンロードします。

ここでダウンロードしたモデルのフォルダ名が「OmniParser」になっており、次にGitHubからクローンする際にフォルダ名が被ってしまいエラーになるので、「OmniParsermodel」などと名前を変更しておきましょう。

!git clone https://huggingface.co/microsoft/OmniParser

モデルのダウンロードが完了したら、GitHubからクローンします。

!git clone https://github.com/microsoft/OmniParser.git

これで「OmniParser」と「OmniParsermodel」の二つがcontent内にあることになります。

そうしたら次にweights/フォルダにそれぞれを配置します。「weights」は「OmniParser」内にありますので、そこに配置しましょう。

- `weights/icon_detect`
- `weights/icon_caption_florence`
- `weights/icon_caption_blip2`

ここまでできたら、次は必要なライブラリのインストールです

!pip install ultralytics utils torch supervision einops timm > NUL

続いてモデルの処理です

モデルの処理はこちら
import torch
from ultralytics.nn.tasks import DetectionModel
from safetensors.torch import load_file

tensor_dict = load_file("/content/OmniParser/weights/icon_detect/model.safetensors")

model = DetectionModel('/content/OmniParser/weights/icon_detect/model.yaml')
model.load_state_dict(tensor_dict)
torch.save({'model':model}, '/content/OmniParser/weights/icon_detect/best.pt')
依存パッケージはインストールはこちら
%cd OmniParser
!pip install -r requirements.txt
物体検出モデルのセットアップはこちら
import sys
import supervision
import torch
from ultralytics import YOLO
from PIL import Image
import os
import importlib

sys.path.insert(0, '/content/OmniParser')

import utils
importlib.reload(utils)

device = 'cuda'
from utils import get_som_labeled_img, check_ocr_box, get_caption_model_processor, get_yolo_model

som_model = get_yolo_model(model_path='/content/OmniParser/weights/icon_detect/best.pt')
som_model.to(device)
print('model to {}'.format(device))
画像キャプション生成に使用するモデルプロセッサのセットアップはこちら
from utils import get_som_labeled_img, check_ocr_box, get_caption_model_processor, get_yolo_model
caption_model_processor = get_caption_model_processor(model_name="blip2", model_name_or_path="/content/OmniParser/weights/icon_caption_blip2", device="cuda")
# caption_model_processor = get_caption_model_processor(model_name="florence2", model_name_or_path="/content/drive/MyDrive/OmniParser/icon_caption_florence", device="cpu")

ここまできたら物体検出モデルのデバイス情報を取得しておきましょう

som_model.device, type(som_model)

次に画像に対する物体検出とOCR(文字認識)を行います

画像に対する物体検出とOCRはこちら

cnt = 0
image_path = '/content/OmniParser/imgs/google_page.png'
draw_bbox_config = {
    'text_scale': 0.8,
    'text_thickness': 2,
    'text_padding': 3,
    'thickness': 3,
}
BOX_TRESHOLD = 0.03

image = Image.open(image_path)
image_rgb = image.convert('RGB')

ocr_bbox_rslt, is_goal_filtered = check_ocr_box(image_path, display_img = False, output_bb_format='xyxy', goal_filtering=None, easyocr_args={'paragraph': False, 'text_threshold':0.9})
text, ocr_bbox = ocr_bbox_rslt

dino_labled_img, label_coordinates, parsed_content_list = get_som_labeled_img(image_path, som_model, BOX_TRESHOLD = BOX_TRESHOLD, output_coord_in_ratio=False, ocr_bbox=ocr_bbox,draw_bbox_config=draw_bbox_config, caption_model_processor=caption_model_processor, ocr_text=text,use_local_semantics=True, iou_threshold=0.1)

今回はimage_pathを‘/content/OmniParser/imgs/google_page.png’にしていますが、ここは解析したい画像のパスに変更してください

画像データのデコードはこちら
import base64
import matplotlib.pyplot as plt
import io
plt.figure(figsize=(80,80))

image = Image.open(io.BytesIO(base64.b64decode(dino_labled_img)))
plt.axis('off')

plt.imshow(image)

解析とデコードした画像がこちら

解析結果の表示はこちら

parsed_content_list
解析結果はこちら
['Text Box ID 0: InPrivate',
 'Text Box ID 1: Google',
 'Text Box ID 2: https://',
 'Text Box ID 3: google.com',
 'Text Box ID 4: About',
 'Text Box ID 5: Store',
 'Text Box ID 6: Gmail',
 'Text Box ID 7: Images',
 'Text Box ID 8: Sign',
 'Text Box ID 9: Google',
 'Text Box ID 10: Google Search',
 'Text Box ID 11: Feeling Lucky',
 'Text Box ID 12: Discover',
 'Text Box ID 13: the ways Chrome keeps you safe while you browse',
 'Text Box ID 14: Advertising',
 'Text Box ID 15: Business',
 'Text Box ID 16: How Search works',
 'Text Box ID 17: Our third decade of climate action: join us',
 'Text Box ID 18: Privacy',
 'Text Box ID 19: Terms',
 'Text Box ID 20: Settings',
 'Text Box ID 21: 3.55 PM',
 'Text Box ID 22: Search',
 'Text Box ID 23: Microsoft',
 'Text Box ID 24: 10/25/2024',
 'Icon Box ID 25: a graph or chart.',
 'Icon Box ID 26: an email or messaging application.',
 'Icon Box ID 27: Microsoft Teams 2.0.',
 'Icon Box ID 28: Microsoft OneNote, a note-taking application.',
 'Icon Box ID 29: the Microsoft Visual Studio development environment.',
 'Icon Box ID 30: a progress bar or progress indicator.',
 'Icon Box ID 31: a command line interface (CLI).',
 'Icon Box ID 32: a shield with arrows pointing in different directions.',
 'Icon Box ID 33: the Microsoft Edge web browser.',
 'Icon Box ID 34: a folder used to organize and store files.',
 'Icon Box ID 35: a pair of scissors used for cutting and pasting.',
 "Icon Box ID 36: Microsoft's Internet Explorer web browser.",
 'Icon Box ID 37: a camera icon.',
 'Icon Box ID 38: a magnifying glass or search function.',
 'Icon Box ID 39: a windowed mode for a desktop application.',
 'Icon Box ID 40: a user profile or account.',
 'Icon Box ID 41: a microphone.',
 'Icon Box ID 42: a square or square-shaped icon.',
 'Icon Box ID 43: a "X" or "Close" button.',
 'Icon Box ID 44: adding or creating a new item.',
 'Icon Box ID 45: a star icon.',
 'Icon Box ID 46: a grid-like layout with multiple rows and columns.',
 'Icon Box ID 47: a "X" or "Close" button.',
 'Icon Box ID 48: an airplane flying over a city.',
 'Icon Box ID 49: a loading or buffering indicator.',
 'Icon Box ID 50: a book or document.',
 'Icon Box ID 51: the Google Chrome web browser.',
 'Icon Box ID 52: a horizontal line or divider.',
 'Icon Box ID 53: a magnifying glass or search function.']

いろんな有名サイトのトップページをOmniParserで解析

image_path以外は前述したものと全く一緒なので割愛をします。結果の表示のみです。

yahooの結果はこちら
['Text Box ID 0: Yahco=',
 'Text Box ID 1: Lyp',
 'Text Box ID 2: YAH9OI',
 'Text Box ID 3: 7L:7h',
 'Text Box ID 4: t_Jvayva"Eyt',
 'Text Box ID 5: JAPAN',
 'Text Box ID 6: +S~JL',
 'Text Box ID 7: J-F',
 'Text Box ID 8: 917',
 'Text Box ID 9: @*',
 'Text Box ID 10: Mu',
 'Text Box ID 11: #E',
 'Text Box ID 12: "71l9+h',
 'Text Box ID 13: MR',
 'Text Box ID 14: 636253',
 'Text Box ID 15: fEBinoomks',
 'Text Box ID 16: f>IhJvX0#An7-#_7*AB',
 'Text Box ID 17: ~#ttyrxhvht2',
 'Text Box ID 18: TFoituibb',
 'Text Box ID 19: EGox',
 'Text Box ID 20: vavEyt',
 'Text Box ID 21: 18',
 'Text Box ID 22: IvJX',
 'Text Box ID 23: XT-',
 'Text Box ID 24: EMy',
 'Text Box ID 25: 1&',
 'Text Box ID 26: t-ovay',
 'Text Box ID 27: 1o/30 7k]',
 'Text Box ID 28: 2791743+_0',
 'Text Box ID 29: ####ES6X',
 'Text Box ID 30: Q4146',
 'Text Box ID 31: 7uj?',
 'Text Box ID 32: Js)yv fBAR',
 'Text Box ID 33: ARREOZEER 5280161',
 'Text Box ID 34: ZOZOTOWN',
 'Text Box ID 35: XEiKn K 57ileetu',
 'Text Box ID 36: R4463',
 'Text Box ID 37: Rzi€OPEN',
 'Text Box ID 38: LOHACO',
 'Text Box ID 39: ~ithzxk',
 'Text Box ID 40: 1o/30/7*) 16.28',
 'Text Box ID 41: FS~JL',
 'Text Box ID 42: +3F15 121249 O4#EELh',
 'Text Box ID 43: 186',
 'Text Box ID 44: Nhed',
 'Text Box ID 45: #com',
 'Text Box ID 46: #zh JRAOIZ#UAmT^',
 'Text Box ID 47: ~{comLxisy',
 'Text Box ID 48: #Xiziamy-I 7727r5',
 'Text Box ID 49: 1450',
 'Text Box ID 50: PayPay / ILx',
 'Text Box ID 51: ##AAS v76IYOvs DeNA',
 'Text Box ID 52: #mex',
 'Text Box ID 53: 63253',
 'Text Box ID 54: +Ev"z-5',
 'Text Box ID 55: THE NIKKA WHISKY TOKYO',
 'Text Box ID 56: EtwA-imh',
 'Text Box ID 57: "13+1#+"~izlttoy-k',
 'Text Box ID 58: {CES: @LJSKY',
 'Text Box ID 59: 20r*wkr Kane',
 'Text Box ID 60: 83',
 "Text Box ID 61: r5+ A-3OOOFFIXU'7eAEMl-euiglt",
 'Text Box ID 62: XT-VTE',
 'Text Box ID 63: syo',
 "Text Box ID 64: 'DHISPAI",
 'Text Box ID 65: 77t+v3',
 'Text Box ID 66: #tolit',
 'Text Box ID 67: 8148+816175V1@8OOR',
 'Text Box ID 68: RXA R',
 'Text Box ID 69: C23<',
 'Text Box ID 70: 576',
 "Text Box ID 71: XJAX/ '*",
 'Text Box ID 72: 10/29 9.2585',
 'Text Box ID 73: Mu',
 'Text Box ID 74: ESOx',
 'Text Box ID 75: LYP7L:7h',
 'Text Box ID 76: stkore+)-Tvrnz',
 'Text Box ID 77: LINE MUSIC',
 'Text Box ID 78: 10 800p',
 'Text Box ID 79: 2024410A30A(zk)',
 'Text Box ID 80: #AK',
 'Text Box ID 81: J-1',
 'Text Box ID 82: [baigtxR+wc] ITwas+hJ',
 'Text Box ID 83: FroTX',
 'Text Box ID 84: YahoolE/',
 'Text Box ID 85: TEi-] ToEE+ETilt2aortttr',
 'Text Box ID 86: Maly)Litt |sbpl',
 'Text Box ID 87: #+R < BA3u1j6 SNS.',
 'Text Box ID 88: 230113c 0%',
 'Text Box ID 89: 22ci15c',
 'Text Box ID 90: ebookjapan',
 'Text Box ID 91: NEWSTZ',
 'Text Box ID 92: Nsl_Y',
 'Text Box ID 93: LINE',
 'Text Box ID 94: LFzib "#E,',
 'Text Box ID 95: 10xk3t8',
 'Text Box ID 96: sloerapaxtiit2',
 'Icon Box ID 97: the "It" function in Microsoft Word.',
 'Icon Box ID 98: a stylus or writing instrument.',
 'Icon Box ID 99: an arrow pointing to the left.',
 'Icon Box ID 100: a briefcase or suitcase.',
 'Icon Box ID 101: a message in Japanese.',
 'Icon Box ID 102: the Chinese character for "love".',
 'Icon Box ID 103: a location or location-based feature.',
 'Icon Box ID 104: a runner or runner-related activity.',
 'Icon Box ID 105: a graph or chart.',
 'Icon Box ID 106: a text input field with Chinese characters.',
 'Icon Box ID 107: the letter "L".',
 'Icon Box ID 108: a message in Chinese.',
 'Icon Box ID 109: a music or music-related function.',
 'Icon Box ID 110: a message in Chinese.',
 'Icon Box ID 111: a circus tent.',
 'Icon Box ID 112: the Japanese language.',
 'Icon Box ID 113: a picture or image.',
 'Icon Box ID 114: an arrow pointing to the right.',
 'Icon Box ID 115: a fork and spoon.',
 'Icon Box ID 116: an email or messaging application.',
 'Icon Box ID 117: a message in Japanese.',
 'Icon Box ID 118: a video game controller.',
 'Icon Box ID 119: a stack of books.',
 'Icon Box ID 120: a night mode or sleep mode.',
 'Icon Box ID 121: a message in Chinese.',
 'Icon Box ID 122: a zoom function.Zacks Investment Research Upgrades Koppers (NYSE:KOP) to “Buy”',
 'Icon Box ID 123: a logo for a streaming service.',
 "Icon Box ID 124: a judge's gavel.",
 'Icon Box ID 125: a map or location-based feature.',
 'Icon Box ID 126: the Japanese language.',
 'Icon Box ID 127: a crescent moon and stars.',
 'Icon Box ID 128: the weather forecast for the next day.',
 'Icon Box ID 129: a new button or feature.',
 'Icon Box ID 130: a text input field with the Chinese language.',
 "Icon Box ID 131: a judge's gavel.",
 'Icon Box ID 132: a weather or weather-related feature.',
 'Icon Box ID 133: a blank or empty space.',
 'Icon Box ID 134: a person standing on top of a hill.',
 'Icon Box ID 135: a new button or feature.',
 'Icon Box ID 136: a smiling woman with her hand on her chin.',
 'Icon Box ID 137: a shopping cart or basket.',
 'Icon Box ID 138: a percentage value of 0%.',
 'Icon Box ID 139: a user profile or profile picture.',
 'Icon Box ID 140: a house and a building.',
 'Icon Box ID 141: a chat or messaging function.',
 'Icon Box ID 142: a horizontal line or divider.',
 'Icon Box ID 143: a bar or lounge area.',
 'Icon Box ID 144: a treasure chest.',
 'Icon Box ID 145: the number "65" in Japanese.']
参考:https://www.yahoo.co.jp/

[検証動画]

Youtubeの結果はこちら
['Text Box ID 0: YouTube',
 'Text Box ID 1: T-4',
 'Text Box ID 2: AsL',
 'Text Box ID 3: 7eXva>',
 'Text Box ID 4: 9zizhtzEvk',
 'Text Box ID 5: Minecraft',
 'Text Box ID 6: "JA-Fantmimj',
 'Text Box ID 7: Ja-k',
 'Text Box ID 8: 21)+>TJL',
 "Text Box ID 9: 2l'#osz",
 'Text Box ID 10: 18wT4 JTTJJI',
 'Text Box ID 11: 7990',
 'Text Box ID 12: 2000',
 'Text Box ID 13: bttrho7ogsLt',
 'Text Box ID 14: Trntligttj^',
 'Text Box ID 15: ~A#,6-1ll 53',
 'Text Box ID 16: RIZAP',
 'Text Box ID 17: Tha musfe uhdv',
 'Text Box ID 18: [ind',
 'Text Box ID 19: @Utenonic',
 'Text Box ID 20: 2.14.30',
 'Text Box ID 21: 1.13.30',
 'Text Box ID 22: 1.51.56',
 'Text Box ID 23: MmoEFM  3X>A',
 'Text Box ID 24: KZi] BVLGARI_',
 "Text Box ID 25: '#mirvz",
 'Text Box ID 26: 1990~20004tzttry',
 'Text Box ID 27: [JMhj] Em+yxltlolr',
 'Text Box ID 28: Axmrizelliss',
 'Text Box ID 29: R1+R',
 'Text Box ID 30: 47135. RIZAP .',
 'Text Box ID 31: +vriareisizitn',
 'Text Box ID 32: 313+ ',
 'Text Box ID 33: Bvlgari',
 'Text Box ID 34: Ev',
 "Text Box ID 35: 'ilzitz pbli",
 'Text Box ID 36: 5+-71517+510tj3_',
 'Text Box ID 37: jmkitiegi#',
 'Text Box ID 38: #tax',
 'Text Box ID 39: 3iv+  ',
 'Text Box ID 40: RIZAP (54+v7)',
 'Text Box ID 41: Mvl7< tal,',
 'Text Box ID 42: J-POP Record',
 'Text Box ID 43: Relax Music BGM CHANNEL',
 'Text Box ID 44: 65293',
 'Text Box ID 45: 106 @riz',
 'Text Box ID 46: b Am',
 'Text Box ID 47: 1276 @iai8',
 'Text Box ID 48: Wmiav',
 'Text Box ID 49: 11726 @ulz',
 'Text Box ID 50: F0u',
 'Text Box ID 51: 0JA>',
 'Text Box ID 52: AEA',
 'Text Box ID 53: MMORPGo',
 'Text Box ID 54: {ulosk s',
 'Text Box ID 55: ANYTIME ONE PIECE',
 'Text Box ID 56: #Eea',
 'Text Box ID 57: "iint',
 'Text Box ID 58: #rrat',
 'Text Box ID 59: Ai_',
 'Text Box ID 60: 3rie4ge',
 'Text Box ID 61: Round 18',
 'Text Box ID 62: 44% # m',
 'Text Box ID 63: EB.1z @Eexkbeza',
 'Text Box ID 64: le30',
 'Text Box ID 65: 2.20.32',
 'Text Box ID 66: TVTE*2743+7@174',
 'Text Box ID 67: toP SonGS 2024',
 'Text Box ID 68: 2.19.43',
 'Text Box ID 69: (Oa52 VsTilnzi 2287701583',
 'Text Box ID 70: Records',
 'Text Box ID 71: LIVE#584 [WR-SiM]',
 'Text Box ID 72: <45#45+ 71E',
 'Text Box ID 73: 4REvlF+_FR# [2024',
 'Text Box ID 74: M59',
 "Text Box ID 75: AB . Ie ' ER#Ab %am,",
 'Text Box ID 76: Ea',
 'Text Box ID 77: Km3-E_ [MEHBGM]',
 'Text Box ID 78: 1lzzlke-ztl} -#t !',
 'Text Box ID 79: FONE PIECEJ 4ACI_',
 'Text Box ID 80: 41080]',
 'Text Box ID 81: TL"zh',
 'Text Box ID 82: T0x355]',
 'Text Box ID 83: TiEx#}SJ',
 'Text Box ID 84: Smooth Autumn Jazz Music to_',
 'Text Box ID 85: T0JT>',
 'Text Box ID 86: ONE PIECEZ stYouTubes + > _',
 'Text Box ID 87: % (Top Songs)',
 'Text Box ID 88: TBS NEWS DIG Powered by',
 'Text Box ID 89: BGM channel',
 'Text Box ID 90: 1859 @inie',
 'Text Box ID 91: Bm IzACiaA#',
 'Text Box ID 92: 8128 A b WHE+',
 'Text Box ID 93: 3.56J @inie',
 'Text Box ID 94: Bmj',
 'Text Box ID 95: 476 @irie < 20',
 'Text Box ID 96: Xb #lE+',
 'Text Box ID 97: va-F',
 'Text Box ID 98: I8c+',
 'Icon Box ID 99: a text input field in Japanese.',
 'Icon Box ID 100: a text input field in Japanese.',
 'Icon Box ID 101: a text input field in a language other than English.',
 'Icon Box ID 102: a text input field in Japanese.',
 'Icon Box ID 103: the Japanese language.',
 'Icon Box ID 104: a text input field for inputting Chinese characters.',
 'Icon Box ID 105: a text input field in japanese.',
 'Icon Box ID 106: a magnifying glass or search function.',
 'Icon Box ID 107: a text input field for inputting Chinese characters.',
 'Icon Box ID 108: a list of languages.',
 'Icon Box ID 109: the J-Pop record label.',
 'Icon Box ID 110: a microphone or voice input feature.',
 'Icon Box ID 111: a user profile or account.',
 'Icon Box ID 112: a character from the anime series One Piece.',
 'Icon Box ID 113: the logo for the "Relax BGM Channel" application.',
 'Icon Box ID 114: a logo for a brand or company.',
 'Icon Box ID 115: a green checkmark indicating that the user is verified.',
 'Icon Box ID 116: a text input field with Chinese characters.',
 'Icon Box ID 117: a message in Japanese.',
 'Icon Box ID 118: a person wearing sunglasses and holding a football.',
 'Icon Box ID 119: a calendar or schedule.',
 'Icon Box ID 120: a gaming or gaming-related feature.',
 'Icon Box ID 121: a message in Japanese.',
 'Icon Box ID 122: a person wearing sunglasses.',
 'Icon Box ID 123: the Japanese language.',
 'Icon Box ID 124: a text input field with Chinese characters.',
 'Icon Box ID 125: a text input field with Chinese characters.',
 'Icon Box ID 126: a music or music-related function.',
 'Icon Box ID 127: a home or home page.',
 'Icon Box ID 128: the Chinese character for "family" or "relatives".',
 'Icon Box ID 129: a stylus used for drawing or writing.',
 'Icon Box ID 130: a user profile or account.',
 'Icon Box ID 131: a text input field in a language other than English.',
 'Icon Box ID 132: a signal strength indicator.',
 'Icon Box ID 133: the Japanese language.',
 'Icon Box ID 134: a flame or fire.',
 'Icon Box ID 135: a movie or video clip.',
 'Icon Box ID 136: the Japanese language.',
 'Icon Box ID 137: a text input field in a Japanese language.',
 'Icon Box ID 138: a trophy or award.',
 'Icon Box ID 139: a light bulb.',
 'Icon Box ID 140: a clock showing the current time.',
 'Icon Box ID 141: a toggle switch in the "on" position.',
 'Icon Box ID 142: a menu or list of options.',
 'Icon Box ID 143: a message in Japanese.',
 'Icon Box ID 144: a video player or media player.',
 'Icon Box ID 145: a vertical scroll bar.',
 'Icon Box ID 146: a person jumping into the air.',
 'Icon Box ID 147: a loading or buffering indicator.',
 'Icon Box ID 148: a play button.',
 'Icon Box ID 149: a Wi-Fi signal strength indicator.',
 'Icon Box ID 150: a vertical scroll bar.',
 'Icon Box ID 151: a signal strength indicator.']
参考:https://www.youtube.com/?app=desktop&hl=ja
Instagramの結果はこちら
['Text Box ID 0: 8.04',
 'Text Box ID 1: nnllapislazuli ',
 'Text Box ID 2: Travel',
 'Text Box ID 3: Instagnam',
 'Text Box ID 4: Jmzo',
 'Text Box ID 5: 8885,',
 'Text Box ID 6: Oma',
 'Text Box ID 7: 1(Z9-',
 'Text Box ID 8: good',
 'Text Box ID 9: 094>',
 'Text Box ID 10: hanngcr',
 'Text Box ID 11: Going to Ea',
 'Text Box ID 12: Facebook-pJTy',
 'Text Box ID 13: Fzrnt"a',
 'Text Box ID 14: Good',
 'Text Box ID 15: todiy',
 'Text Box ID 16: 7m2vk265s-tlivgh',
 'Text Box ID 17: better',
 'Text Box ID 18: ToyD-',
 'Text Box ID 19: App Store',
 'Text Box ID 20: Google',
 'Text Box ID 21: 05sovo-F',
 'Text Box ID 22: Meta',
 'Text Box ID 23: 70)',
 'Text Box ID 24: API',
 'Text Box ID 25: 75t/y-',
 'Text Box ID 26: HARIJ',
 'Text Box ID 27: Instagram',
 'Text Box ID 28: Threads',
 'Text Box ID 29: 1820y "JA-Fci-#-AX',
 'Text Box ID 30: Meta#Zaf',
 'Text Box ID 31: 2024 Instagram from Meta',
 'Text Box ID 32: Qaustagt',
 'Icon Box ID 33: a message in Japanese with the number 9.',
 'Icon Box ID 34: a text input field with Chinese characters.',
 'Icon Box ID 35: the Japanese language.',
 'Icon Box ID 36: a horizontal scroll bar.',
 'Icon Box ID 37: a text input field with an option to input Chinese characters.',
 'Icon Box ID 38: a horizontal line or divider.',
 'Icon Box ID 39: the Japanese language.',
 'Icon Box ID 40: a text input field with Chinese characters.']
参考:https://www.instagram.com/?locale=ja_JP

見たままのUIを分析・操作できる「OmniParser」

Microsoftの「OmniParser」なら、端末やプラットフォームを問わず、UIの位置と意味の把握が可能。GPT-4Vを筆頭にさまざまなマルチモーダルLLMとの連携にも対応しているので、今後の活躍に期待がもてそうです。

実際、日本国内でも、SNSで注目を集めている様子。個人的には、InstagramやTikTokと組み合わせてSNSマーケティングに活用できるんじゃないかと予想しています。今後が楽しみですね!

最後に

いかがだったでしょうか?

OmniParserの活用で、UI分析と業務自動化が一層手軽に。OmniParserの詳細を知り、具体的な導入事例や応用方法について深掘りしていきましょう。

株式会社WEELは、自社・業務特化の効果が出るAIプロダクト開発が強みです!

開発実績として、

・新規事業室での「リサーチ」「分析」「事業計画検討」を70%自動化するAIエージェント
・社内お問い合わせの1次回答を自動化するRAG型のチャットボット
・過去事例や最新情報を加味して、10秒で記事のたたき台を作成できるAIプロダクト
・お客様からのメール対応の工数を80%削減したAIメール
・サーバーやAI PCを活用したオンプレでの生成AI活用
・生徒の感情や学習状況を踏まえ、勉強をアシストするAIアシスタント

などの開発実績がございます。

まずは、無料相談にてご相談を承っておりますので、ご興味がある方はぜひご連絡ください。

➡︎生成AIを使った業務効率化、生成AIツールの開発について相談をしてみる。

生成AIを社内で活用していきたい方へ
LLM比較レポート

「生成AIを社内で活用したい」「生成AIの事業をやっていきたい」という方に向けて、生成AI社内セミナー・勉強会をさせていただいております。

セミナー内容や料金については、ご相談ください。

また、大規模言語モデル(LLM)を対象に、言語理解能力、生成能力、応答速度の各側面について比較・検証した資料も配布しております。この機会にぜひご活用ください。

Authors

  • 2sc

    テクニカルライター 大学時代はアリの生態を研究。 ラボで唯一、Pythonを使ってデータ分析を効率化していた。 現在はライターとして、オウンドメディアや学術記事の執筆に当たっている。

  • 翔平

    総合病院で10年間理学療法士として勤務し、その後Pythonを独学で学びデータアナリストとして転職。趣味はキックボクシング

  • URLをコピーしました!
  • URLをコピーしました!
目次