Мазмұнға өту
Vasic Digital

// деңгей: vasic-util-secondary · тапсырыс 23

VisionEngine Белсенділицензия: UNVERIFIED

Go (1.25+)GoCV / OpenCV (build-tag-gated)LLM vision providers (GPT-4o, Claude, Gemini, Qwen-VL, Kimi, StepGUI, Astica, Ollama)Graph algorithms (BFS)DOT / JSON / Mermaid exportersi18n Translator seam

Көзі

VisionEngine — four-layer stack Layered engine Vision provider fallback Build-tag split Analyzer screen understanding NavigationGraph BFS pathfinding LLM Vision provider fallback chain Config i18n Translator seam GPT-4o Claude · Gemini Qwen-VL · Kimi StepGUI · Astica · Ollama default build stub (no OpenCV) -tags vision GoCV / OpenCV Exporters DOT · JSON · Mermaid
// архитектура

Қолданушы интерфейсін пайдаланушының көзімен көру — компьютерлік көру мен LLM көруін талдау және навигация үшін қолдану.

VisionEngine — бөлшектелген Go құралдар жинағы, ол классикалық компьютерлік көруді LLM негізіндегі көрумен біріктіріп, пайдаланушы интерфейстерін талдайды, UI элементтерін және көріністік ақауларын анықтайды, сонымен қатар қолданба экрандарының ауысуларының навигациялық графтарын құрады. Көру провайдерлерінің көпшілік таңдауымен және OpenCV құрылыс тегі арқылы қосылған.

UI талдауы мен навигациялық граф құруға арналған қайта пайдаланылатын Go модулі. Ол талдаушы деңгейін (UI элементтері, экрандардың айырмашылықтары, көріністік ақаулар), BFS іздеу әдісімен жұмыс істейтін навигациялық графты және DOT/JSON/Mermaid экспортымен қамтамасыз ететін LLM көру адаптерлерін (GPT-4o, Claude, Gemini, Qwen-VL және басқалары үшін) ұсынады.

Көптеген UI тестілеу автоматтандырулары шын мәнінде соқыр болып келеді. Олар қолжетімділік ағаштары мен DOM селекторларына жүгінеді — бұл машина үшін интерфейс идеясы, ал адам шын мәнінде көретін нәрселерді жіберіп алады: батырманың көрініп тұрғаны, макеттің бұзылғаны, экранның күтілгеніне сәйкес келетіні. VisionEngine осы алшақтықты жойып, автоматтандыруға нағыз қабылдау қабілетін береді — UI-ді адамша қарап, ойлау мүмкіндігін. Ол шикі пиксельдерден бастап бүкіл қолданбаны түсіну деңгейіне дейін төрт бірлескен деңгейден тұрады. Талдаушы тұрақты келісімшартты анықтайды — интерфейстер (Analyzer, VideoProcessor) және мәндер типтері (UIElement, ScreenAnalysis, ScreenDiff, Rect, Size, TextRegion, VisualIssue, ScreenIdentity, Action, KeyFrame) StubAnalyzer эталондық іске асыруымен — бұл тұтынушыларға элементтерді анықтауға, экрандарды салыстыруға және келісімшартқа сәйкес көріністік ақауларды анықтауға мүмкіндік береді, ол өзгеріске ұшырамайды. Навигациялық граф көріністі жеке экраннан бүкіл қолданбаға көтеріп, оны экран ауысуларының бағытталған графі ретінде модельдейді, BFS іздеу әдісімен және үш экспорттық бекендпен (DOT, JSON, Mermaid) жабдықталады. Бұл автоматтандыруға тек экранды көру ғана емес, кез келген басқа экранға жолды жоспарлауға мүмкіндік береді — және ол стресс, автоматтандыру, интеграция және қауіпсіздік сынақтарын қосады. LLM көру деңгейі қазіргі заманғы мультимодальды ойлауды қосады: VisionProvider интерфейсі OpenAI (GPT-4o), Anthropic (Claude), Gemini, Qwen-VL, Kimi, StepGUI, Astica және Ollama адаптерлерімен жабдықталған, FallbackChain арқылы құрастырылған, бұл провайдердің сәтсіздігі, лимиттен асуы немесе әлсіздігі кезінде келесісіне ауысу арқылы жұмыс істейді, бұл тестілеуді тоқтатпайды. Конфигурациялау деңгейі орталық айнымалыларды жүктеу мен тексеруді қамтиды, ал барлық пайдаланушыға көрсетілетін қате хабарлары i18n.Translator арқылы өткізіледі.

Барлығының қабылдануына мүмкіндік беретін шешім — ауыр табиғи тәуелділік міндетті емес. OpenCV байланыстары құрылыс тегі арқылы -tags vision белгісімен қорғалған, ал әдепкі құрылыс эталондық нұсқаларды жібереді. Бұл бүкіл модуль Go 1.25+ хостында OpenCV құралдары жоқ кезде де құрастырылып, тестіленіп, жұмыс істейді және табиғи стек тек тұтынушы оны әдейі таңдағанда ғана жүктеледі. Осылайша VisionEngine арнайы бейнесіз қарапайым CI жүргізушісіне де орнатылады. CONST-051(B) конституциясына сәйкес толық бөлшектелген бұл модуль тұтынушылармен — атап айтқанда HelixQA — бірдей кодтық базадағы кіші модуль ретінде қосылады, бұл дәлелдерге негізделген UI тестілеуге нағыз көз береді.

Мазмұны

Тек қолжетімділік ағаштарына не селекторларға сүйенетін UI тестілеу автоматтандыруы пайдаланушының шын мәнінде көретін нәрсесін жіберіп алады. VisionEngine нақты көру қабілетін қосады — элементтерді анықтау, экрандарды салыстыру және LLM көру қабілетімен логикалық талдау — сонымен қатар қосымша экрандарының навигациялық картасын береді, бұл автоматтандырудың интерфейсті қабылдауына да, оның бойынша маршруттауына да мүмкіндік береді.

Екі әдетте үйлеспейтін тәсілді — жылдам, детерминирленген классикалық компьютерлік көру мен икемді, семантикалық LLM көру қабілетін — бір интерфейс арқылы біріктіріп, кері қайтару тізбегін пайдаланып, тұтынушы біріншінің дәлдігі мен екіншісінің логикалық талдауын таңдаусыз алады. Сонымен қатар, OpenCV-ді қатаң түрде қосымша ретінде ұстау арқылы оның күшін пайдаланудың әдеттегі кедергісін жойды: кез келген Go жобасы нативті көру құралдарының тізбегін құрастыруға тартусыз нақты UI қабылдауын ала алады.

  • Қос қабылдау: классикалық CV (OpenCV/GoCV) және көп провайдерлі LLM көру қабілеті кері қайтару тізбегімен.
  • BFS жол табу алгоритмімен және DOT/JSON/Mermaid экспортымен навигациялық граф.
  • OpenCV-ді құрастыру тегтері арқылы бөліп, модульдің нативті тәуелділіксіз құрастырылуын және тестілеуін қамтамасыз ету.
  • Толық бөлінген, интернационалдандыру тігістері бар, бірдей кодтық базалы кіші модуль (HelixQA пайдаланады).

  • Нативті тәуелділіктердің ауырлығы: OpenCV жоқ CI/хосттарда да құрастыру мен тестілеуді қамтамасыз ететін -tags vision тегі және әдепкі орынбасарлар арқылы шешілді.
  • Көру провайдерлерінің сенімсіздігі: VisionProvider интерфейсі және FallbackChain композиторы арқылы шешілді.
  • Күрделі қосымша ағымдарын картаға түсіру: бағытталған навигациялық граф, BFS жол табу алгоритмі және көп форматты экспорт арқылы шешілді.
  • Тәуелділіктер: CONST-051(B) бөлінуі және интернационалдандыру аудармашысы арқылы шешілді.

  • Go (1.25+) — модульдің негізі және барлық төрт қабаты.
  • GoCV / OpenCV — классикалық компьютерлік көру, құрастыру тегтері арқылы бөлінген.
  • LLM көру провайдерлері (GPT-4o, Claude, Gemini, Qwen-VL, Kimi, StepGUI, Astica, Ollama) — адаптерлер арқылы мультимодальды UI логикалық талдауы.
  • Граф алгоритмдері (BFS) — навигациялық жол табу.
  • DOT / JSON / Mermaid экспорттаушылары — навигациялық графты визуализациялау.
  • i18n аудармашысы — бөлінген пайдаланушыға көрсетілетін жолдар.