montana/Русский/Логистика/test_questions.py

369 lines
29 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""
SeaFare Montana — Realistic Test Questions for QA & Fast Path Validation
~180+ questions across 10 categories, bilingual (RU/EN), including typos & informal language.
Generated based on real maritime industry queries from shipping professionals,
freight brokers, charterers, and shipowners.
"""
TEST_QUESTIONS = [
# =========================================================================
# 1. VESSEL SEARCH (15+ questions)
# =========================================================================
{"q": "найди OSLO BULK 7", "cat": "vessel_search", "lang": "ru"},
{"q": "найти танкеры рядом с Новороссийском", "cat": "vessel_search", "lang": "ru"},
{"q": "поиск EVER GIVEN", "cat": "vessel_search", "lang": "ru"},
{"q": "найди балкер в Черном море", "cat": "vessel_search", "lang": "ru"},
{"q": "суда рядом с Баку", "cat": "vessel_search", "lang": "ru"},
{"q": "суда около Актау", "cat": "vessel_search", "lang": "ru"},
{"q": "какие суда сейчас в порту Туркменбаши", "cat": "vessel_search", "lang": "ru"},
{"q": "корабли рядом с Ротердамом", "cat": "vessel_search", "lang": "ru"}, # typo: Ротердам
{"q": "суда в каспийском море", "cat": "vessel_search", "lang": "ru"},
{"q": "найди PROFESSOR GUL", "cat": "vessel_search", "lang": "ru"},
{"q": "покажи суда на Балтике", "cat": "vessel_search", "lang": "ru"},
{"q": "суда у порта Поти", "cat": "vessel_search", "lang": "ru"},
{"q": "танкеры на Каспии", "cat": "vessel_search", "lang": "ru"},
{"q": "балкеры рядом с Констанцей", "cat": "vessel_search", "lang": "ru"},
{"q": "что на Черном море", "cat": "vessel_search", "lang": "ru"},
{"q": "find vessels near Rotterdam", "cat": "vessel_search", "lang": "en"},
{"q": "search MAERSK SEALAND", "cat": "vessel_search", "lang": "en"},
{"q": "ships at Novorossiysk", "cat": "vessel_search", "lang": "en"},
{"q": "bulk carriers in Black Sea", "cat": "vessel_search", "lang": "en"},
{"q": "tankers near Fujairah", "cat": "vessel_search", "lang": "en"},
{"q": "vessels in Caspian sea", "cat": "vessel_search", "lang": "en"},
{"q": "find NORDIC ORION", "cat": "vessel_search", "lang": "en"},
{"q": "ships near Baku port", "cat": "vessel_search", "lang": "en"},
{"q": "vessels at Singapore anchorage", "cat": "vessel_search", "lang": "en"},
{"q": "show me tankers in the Mediterranean", "cat": "vessel_search", "lang": "en"},
{"q": "bulk carriers near Odessa", "cat": "vessel_search", "lang": "en"},
{"q": "vessels near Aktau", "cat": "vessel_search", "lang": "en"},
{"q": "find STENA BULK", "cat": "vessel_search", "lang": "en"},
{"q": "what ships are in the Persian Gulf", "cat": "vessel_search", "lang": "en"},
{"q": "vessels operating in Red Sea", "cat": "vessel_search", "lang": "en"},
# =========================================================================
# 2. VESSEL DETAILS (15+ questions)
# =========================================================================
{"q": "детали CASPIAN MAINPORT", "cat": "vessel_details", "lang": "ru"},
{"q": "подробности PROFESSOR GASHIMOV", "cat": "vessel_details", "lang": "ru"},
{"q": "инфо VOLGA-DON 5074", "cat": "vessel_details", "lang": "ru"},
{"q": "кто владелец KAPITAN GASANOV", "cat": "vessel_details", "lang": "ru"},
{"q": "IMO 9349028", "cat": "vessel_details", "lang": "ru"},
{"q": "инфа по SHAKH DENIZ", "cat": "vessel_details", "lang": "ru"},
{"q": "что за судно MMSI 423456789", "cat": "vessel_details", "lang": "ru"},
{"q": "данные MEKHANIK GASANOV", "cat": "vessel_details", "lang": "ru"},
{"q": "кому принадлежит AKADEMIK ZARIFA ALIYEVA", "cat": "vessel_details", "lang": "ru"},
{"q": "расскажи про HEYDAR ALIYEV", "cat": "vessel_details", "lang": "ru"},
{"q": "флаг и тоннаж AZERBAYCAN", "cat": "vessel_details", "lang": "ru"},
{"q": "дедвейт и год постройки BABEK", "cat": "vessel_details", "lang": "ru"},
{"q": "собственник LACHIN", "cat": "vessel_details", "lang": "ru"},
{"q": "инфа BAKU", "cat": "vessel_details", "lang": "ru"},
{"q": "подробности IMO 8888888", "cat": "vessel_details", "lang": "ru"},
{"q": "details on EVER GIVEN", "cat": "vessel_details", "lang": "en"},
{"q": "who owns CMA CGM MARCO POLO", "cat": "vessel_details", "lang": "en"},
{"q": "vessel details: FRONT ALTA", "cat": "vessel_details", "lang": "en"},
{"q": "info GOLDEN OPUS", "cat": "vessel_details", "lang": "en"},
{"q": "IMO 9811000", "cat": "vessel_details", "lang": "en"},
{"q": "details MMSI 256123000", "cat": "vessel_details", "lang": "en"},
{"q": "what type is the CASPIAN PROGRESS", "cat": "vessel_details", "lang": "en"},
{"q": "owner and operator of STENA SUPREME", "cat": "vessel_details", "lang": "en"},
{"q": "information on NORD STREAM", "cat": "vessel_details", "lang": "en"},
{"q": "flag and DWT of PACIFIC VOYAGER", "cat": "vessel_details", "lang": "en"},
{"q": "vessel info VLCC PIONEER", "cat": "vessel_details", "lang": "en"},
{"q": "tell me about MARE ATLANTICUM", "cat": "vessel_details", "lang": "en"},
{"q": "detials CASPIAN MAINPORT", "cat": "vessel_details", "lang": "en"}, # typo: detials
# =========================================================================
# 3. CONTACTS / BROKERS (15+ questions)
# =========================================================================
{"q": "контакты CASPIAN SHIPPING COMPANY", "cat": "contacts", "lang": "ru"},
{"q": "контакт оператора PROFESSOR GASHIMOV", "cat": "contacts", "lang": "ru"},
{"q": "брокеры в Баку", "cat": "contacts", "lang": "ru"},
{"q": "контакты судовладельца HEYDAR ALIYEV", "cat": "contacts", "lang": "ru"},
{"q": "агенты в порту Актау", "cat": "contacts", "lang": "ru"},
{"q": "фрахтовый отдел CASPAR SHIPPING", "cat": "contacts", "lang": "ru"},
{"q": "контакты владельца VOLGA-DON 5070", "cat": "contacts", "lang": "ru"},
{"q": "агенты в Новороссийске", "cat": "contacts", "lang": "ru"},
{"q": "контакты MSC Mediterranean", "cat": "contacts", "lang": "ru"},
{"q": "оператор LACHIN телефон", "cat": "contacts", "lang": "ru"},
{"q": "связаться с владельцем BABEK", "cat": "contacts", "lang": "ru"},
{"q": "брокеры в порту Поти", "cat": "contacts", "lang": "ru"},
{"q": "емейл ADSC Azerbaijan", "cat": "contacts", "lang": "ru"},
{"q": "как связаться с оператором этого судна", "cat": "contacts", "lang": "ru"},
{"q": "покажи контакты", "cat": "contacts", "lang": "ru"},
{"q": "contacts for EVER GIVEN", "cat": "contacts", "lang": "en"},
{"q": "broker contacts in Singapore", "cat": "contacts", "lang": "en"},
{"q": "chartering department of NORDEN", "cat": "contacts", "lang": "en"},
{"q": "who operates STENA SUPREME and how to contact them", "cat": "contacts", "lang": "en"},
{"q": "contacts MAERSK chartering", "cat": "contacts", "lang": "en"},
{"q": "agent contacts Fujairah", "cat": "contacts", "lang": "en"},
{"q": "email for the owner of CASPIAN MAINPORT", "cat": "contacts", "lang": "en"},
{"q": "phone number CASPAR shipping company", "cat": "contacts", "lang": "en"},
{"q": "contacts ship managers GOLDEN OCEAN", "cat": "contacts", "lang": "en"},
{"q": "I need to contact the operator of this vessel", "cat": "contacts", "lang": "en"},
{"q": "give me broker contacts for Baku", "cat": "contacts", "lang": "en"},
{"q": "freight agents in Novorossiysk", "cat": "contacts", "lang": "en"},
{"q": "contacts port agent Constanta", "cat": "contacts", "lang": "en"},
# =========================================================================
# 4. ROUTES (15+ questions)
# =========================================================================
{"q": "маршрут Баку — Актау", "cat": "route", "lang": "ru"},
{"q": "рассчитай маршрут Новороссийск — Стамбул", "cat": "route", "lang": "ru"},
{"q": "расстояние Поти - Констанца", "cat": "route", "lang": "ru"},
{"q": "маршрут Туркменбаши → Баку", "cat": "route", "lang": "ru"},
{"q": "время хода Роттердам - Сингапур", "cat": "route", "lang": "ru"},
{"q": "сколько идти из Баку в Энзели", "cat": "route", "lang": "ru"},
{"q": "маршрут через Суэцкий канал из Ротердама в Шанхай", "cat": "route", "lang": "ru"},
{"q": "дистанция Актау — Махачкала", "cat": "route", "lang": "ru"},
{"q": "маршрут Батуми - Самсун", "cat": "route", "lang": "ru"},
{"q": "рассчитай маршрут Поти - Бургас", "cat": "route", "lang": "ru"},
{"q": "сколько миль от Баку до Туркменбаши", "cat": "route", "lang": "ru"},
{"q": "маршрут Астрахань — Анзали", "cat": "route", "lang": "ru"},
{"q": "маршрут Фуджейра — Мумбаи", "cat": "route", "lang": "ru"},
{"q": "рассчитай рейс Одесса > Мерсин", "cat": "route", "lang": "ru"},
{"q": "время транзита Баку - Махачкала", "cat": "route", "lang": "ru"},
{"q": "route Baku to Aktau", "cat": "route", "lang": "en"},
{"q": "distance Rotterdam - Singapore", "cat": "route", "lang": "en"},
{"q": "route Novorossiysk — Istanbul", "cat": "route", "lang": "en"},
{"q": "how far is Baku to Turkmenbashi", "cat": "route", "lang": "en"},
{"q": "transit time Poti to Constanta", "cat": "route", "lang": "en"},
{"q": "calculate route Fujairah > Mumbai", "cat": "route", "lang": "en"},
{"q": "route Astrakhan - Anzali", "cat": "route", "lang": "en"},
{"q": "distance Batumi to Samsun", "cat": "route", "lang": "en"},
{"q": "route through Suez Canal Shanghai to Rotterdam", "cat": "route", "lang": "en"},
{"q": "how many days Baku to Makhachkala by sea", "cat": "route", "lang": "en"},
{"q": "voyage estimate Aktau to Baku", "cat": "route", "lang": "en"},
{"q": "ruta Baku - Turkmenbashi", "cat": "route", "lang": "en"}, # Spanish mixed in
# =========================================================================
# 5. CARGO MATCHING (15+ questions)
# =========================================================================
{"q": "нужно перевезти 5000 тонн зерна из Баку", "cat": "cargo", "lang": "ru"},
{"q": "танкер для нефти 10000т Актау - Батуми", "cat": "cargo", "lang": "ru"},
{"q": "суда для перевозки 3000т стали из Поти", "cat": "cargo", "lang": "ru"},
{"q": "у меня 8000т пшеницы в Новороссийске, нужен балкер", "cat": "cargo", "lang": "ru"},
{"q": "перевезти контейнеры из Баку в Актау", "cat": "cargo", "lang": "ru"},
{"q": "ищу судно для 15000т мазута Туркменбаши - Баку", "cat": "cargo", "lang": "ru"},
{"q": "нужен балкер на 20000 тонн угля из Констанцы", "cat": "cargo", "lang": "ru"},
{"q": "перевозка хлопка 2000т Туркменбаши → Анзали", "cat": "cargo", "lang": "ru"},
{"q": "какие суда могут взять 7000т удобрений в Актау", "cat": "cargo", "lang": "ru"},
{"q": "танкер для мазута из Махачкалы", "cat": "cargo", "lang": "ru"},
{"q": "груз 4500т цемент Новороссийск - Поти", "cat": "cargo", "lang": "ru"},
{"q": "есть груз в Баку, нужно судно", "cat": "cargo", "lang": "ru"},
{"q": "перевезти 500 TEU из Стамбула в Батуми", "cat": "cargo", "lang": "ru"},
{"q": "нужен ро-ро для техники из Астрахани", "cat": "cargo", "lang": "ru"},
{"q": "ищу танкер на 30000т в Новороссийске", "cat": "cargo", "lang": "ru"},
{"q": "vessels for 5000t grain from Baku", "cat": "cargo", "lang": "en"},
{"q": "tanker for crude oil Aktau to Batumi", "cat": "cargo", "lang": "en"},
{"q": "I have 10000 tons of steel at Novorossiysk need a ship", "cat": "cargo", "lang": "en"},
{"q": "find vessel for 3000t fertilizer from Poti to Constanta", "cat": "cargo", "lang": "en"},
{"q": "need bulk carrier for coal 25000t from Rotterdam", "cat": "cargo", "lang": "en"},
{"q": "suitable vessel for wheat 8000mt Baku to Anzali", "cat": "cargo", "lang": "en"},
{"q": "ship for 500 containers from Istanbul", "cat": "cargo", "lang": "en"},
{"q": "cargo: crude oil 15000t, loading Turkmenbashi, discharging Baku", "cat": "cargo", "lang": "en"},
{"q": "roro for heavy machinery from Astrakhan to Aktau", "cat": "cargo", "lang": "en"},
{"q": "what vessels can carry 12000t of iron ore from Makhachkala", "cat": "cargo", "lang": "en"},
{"q": "I need to ship cotton 2000mt from Turkmenbashi", "cat": "cargo", "lang": "en"},
{"q": "looking for a tanker near Baku for fuel oil cargo", "cat": "cargo", "lang": "en"},
{"q": "vessel for cement 4000t Novorossiysk - Poti", "cat": "cargo", "lang": "en"},
# =========================================================================
# 6. OUT-OF-SCOPE (queries the platform handles but are "premium" or estimation-based)
# =========================================================================
{"q": "фрахт Новороссийск — Стамбул", "cat": "out_of_scope", "lang": "ru"},
{"q": "ставка фрахта Баку - Актау на зерно", "cat": "out_of_scope", "lang": "ru"},
{"q": "страховка для танкера 50000 DWT", "cat": "out_of_scope", "lang": "ru"},
{"q": "погода на маршруте Роттердам — Сингапур", "cat": "out_of_scope", "lang": "ru"},
{"q": "индекс BDI сегодня", "cat": "out_of_scope", "lang": "ru"},
{"q": "портовые сборы Новороссийск", "cat": "out_of_scope", "lang": "ru"},
{"q": "бункер в Фуджейре", "cat": "out_of_scope", "lang": "ru"},
{"q": "загруженность порта Стамбул", "cat": "out_of_scope", "lang": "ru"},
{"q": "демередж 10 дней по 25000$/день, лейтайм 5 дней", "cat": "out_of_scope", "lang": "ru"},
{"q": "CII рейтинг для балкера 2010 года", "cat": "out_of_scope", "lang": "ru"},
{"q": "санкции DPRK FLAGGED VESSEL", "cat": "out_of_scope", "lang": "ru"},
{"q": "оптимизация бункеровки Баку - Мумбаи", "cat": "out_of_scope", "lang": "ru"},
{"q": "оцени портовые расходы в Актау", "cat": "out_of_scope", "lang": "ru"},
{"q": "текущие ставки на Панамаксы на зерно", "cat": "out_of_scope", "lang": "ru"},
{"q": "война-риск страховка Красное море", "cat": "out_of_scope", "lang": "ru"},
{"q": "freight rate Rotterdam to Shanghai", "cat": "out_of_scope", "lang": "en"},
{"q": "current BDI index", "cat": "out_of_scope", "lang": "en"},
{"q": "insurance premium for Panamax bulk carrier", "cat": "out_of_scope", "lang": "en"},
{"q": "weather routing Fujairah to Singapore", "cat": "out_of_scope", "lang": "en"},
{"q": "port costs Novorossiysk for 50000 DWT bulk", "cat": "out_of_scope", "lang": "en"},
{"q": "bunker prices Fujairah", "cat": "out_of_scope", "lang": "en"},
{"q": "congestion Istanbul port", "cat": "out_of_scope", "lang": "en"},
{"q": "sanctions check on IRANIAN vessel", "cat": "out_of_scope", "lang": "en"},
{"q": "demurrage calculation 12 days at $20000/day, laytime 7 days", "cat": "out_of_scope", "lang": "en"},
{"q": "CII rating for 2008 built tanker", "cat": "out_of_scope", "lang": "en"},
{"q": "war risk premium Red Sea transit", "cat": "out_of_scope", "lang": "en"},
{"q": "optimize bunkering Baku to Mumbai", "cat": "out_of_scope", "lang": "en"},
{"q": "what is the market rate for Supramax in the Med", "cat": "out_of_scope", "lang": "en"},
{"q": "crew change options near Suez", "cat": "out_of_scope", "lang": "en"},
{"q": "generate charter party for 10000t wheat Baku to Batumi", "cat": "out_of_scope", "lang": "en"},
# =========================================================================
# 7. CASPIAN-SPECIFIC (15+ questions)
# =========================================================================
{"q": "операторы на Каспийском море", "cat": "caspian", "lang": "ru"},
{"q": "транс-каспийский маршрут через Актау", "cat": "caspian", "lang": "ru"},
{"q": "суда между Баку и Туркменбаши", "cat": "caspian", "lang": "ru"},
{"q": "какие суда ходят Баку - Актау", "cat": "caspian", "lang": "ru"},
{"q": "паром Алят - Курык", "cat": "caspian", "lang": "ru"},
{"q": "средний коридор через Каспий", "cat": "caspian", "lang": "ru"},
{"q": "глубина порта Актау для балкеров", "cat": "caspian", "lang": "ru"},
{"q": "каспийский флот Azerbaijan Caspian Shipping", "cat": "caspian", "lang": "ru"},
{"q": "ограничения по осадке в порту Баку", "cat": "caspian", "lang": "ru"},
{"q": "линейные перевозки Астрахань - Анзали", "cat": "caspian", "lang": "ru"},
{"q": "сколько судов на Каспии сейчас", "cat": "caspian", "lang": "ru"},
{"q": "танкерные терминалы Каспийского моря", "cat": "caspian", "lang": "ru"},
{"q": "ASCO флот на Каспии", "cat": "caspian", "lang": "ru"},
{"q": "порт Курык пропускная способность", "cat": "caspian", "lang": "ru"},
{"q": "ro-ro паромы Каспий расписание", "cat": "caspian", "lang": "ru"},
{"q": "trans-Caspian route via Aktau and Baku", "cat": "caspian", "lang": "en"},
{"q": "Middle Corridor shipping operators", "cat": "caspian", "lang": "en"},
{"q": "vessels between Baku and Turkmenbashi", "cat": "caspian", "lang": "en"},
{"q": "Caspian Sea fleet operators", "cat": "caspian", "lang": "en"},
{"q": "ferry service Alat - Kuryk", "cat": "caspian", "lang": "en"},
{"q": "draft restrictions Aktau port", "cat": "caspian", "lang": "en"},
{"q": "ASCO Azerbaijan fleet Caspian", "cat": "caspian", "lang": "en"},
{"q": "Caspian tanker terminals", "cat": "caspian", "lang": "en"},
{"q": "what ports are on the Caspian Sea", "cat": "caspian", "lang": "en"},
{"q": "vessels operating Astrakhan - Anzali route", "cat": "caspian", "lang": "en"},
{"q": "Kuryk port capacity and depth", "cat": "caspian", "lang": "en"},
{"q": "how many vessels currently in Caspian Sea", "cat": "caspian", "lang": "en"},
{"q": "Caspian roro ferries schedule", "cat": "caspian", "lang": "en"},
# =========================================================================
# 8. FOLLOW-UP / ADVISORY (15+ questions)
# =========================================================================
{"q": "что посоветуешь для этого груза", "cat": "advisory", "lang": "ru"},
{"q": "какое судно лучше выбрать", "cat": "advisory", "lang": "ru"},
{"q": "порекомендуй оптимальный маршрут", "cat": "advisory", "lang": "ru"},
{"q": "что мне делать дальше", "cat": "advisory", "lang": "ru"},
{"q": "как лучше перевезти 5000т зерна из Баку", "cat": "advisory", "lang": "ru"},
{"q": "стоит ли брать этот танкер", "cat": "advisory", "lang": "ru"},
{"q": "как снизить расходы на фрахт", "cat": "advisory", "lang": "ru"},
{"q": "оптимальное судно для перевозки нефти на Каспии", "cat": "advisory", "lang": "ru"},
{"q": "что выгоднее — контейнер или балкер для этого груза", "cat": "advisory", "lang": "ru"},
{"q": "расскажи подробнее", "cat": "advisory", "lang": "ru"},
{"q": "есть варианты подешевле", "cat": "advisory", "lang": "ru"},
{"q": "а можно побольше судов найти", "cat": "advisory", "lang": "ru"},
{"q": "какой порт лучше для погрузки в Азербайджане", "cat": "advisory", "lang": "ru"},
{"q": "оцени риски этого рейса", "cat": "advisory", "lang": "ru"},
{"q": "сравни эти два судна", "cat": "advisory", "lang": "ru"},
{"q": "recommend a vessel for my cargo", "cat": "advisory", "lang": "en"},
{"q": "which vessel is best for 5000t grain", "cat": "advisory", "lang": "en"},
{"q": "what should I do next", "cat": "advisory", "lang": "en"},
{"q": "is this a good rate for Panamax on this route", "cat": "advisory", "lang": "en"},
{"q": "how to reduce freight costs", "cat": "advisory", "lang": "en"},
{"q": "compare these two vessels", "cat": "advisory", "lang": "en"},
{"q": "tell me more about this one", "cat": "advisory", "lang": "en"},
{"q": "any cheaper options", "cat": "advisory", "lang": "en"},
{"q": "which port is better for loading in Azerbaijan", "cat": "advisory", "lang": "en"},
{"q": "assess the risk of this voyage", "cat": "advisory", "lang": "en"},
{"q": "should I take this vessel or wait for better options", "cat": "advisory", "lang": "en"},
{"q": "what's the best strategy for trans-Caspian cargo", "cat": "advisory", "lang": "en"},
{"q": "can you find more vessels", "cat": "advisory", "lang": "en"},
# =========================================================================
# 9. NON-MARITIME (15+ questions)
# =========================================================================
{"q": "какая погода в Баку", "cat": "non_maritime", "lang": "ru"},
{"q": "расскажи анекдот", "cat": "non_maritime", "lang": "ru"},
{"q": "напиши код на Python", "cat": "non_maritime", "lang": "ru"},
{"q": "кто президент Азербайджана", "cat": "non_maritime", "lang": "ru"},
{"q": "переведи на английский", "cat": "non_maritime", "lang": "ru"},
{"q": "сколько будет 2+2", "cat": "non_maritime", "lang": "ru"},
{"q": "привет как дела", "cat": "non_maritime", "lang": "ru"},
{"q": "расскажи о себе", "cat": "non_maritime", "lang": "ru"},
{"q": "помоги с домашним заданием", "cat": "non_maritime", "lang": "ru"},
{"q": "рецепт борща", "cat": "non_maritime", "lang": "ru"},
{"q": "курс доллара сегодня", "cat": "non_maritime", "lang": "ru"},
{"q": "новости Украины", "cat": "non_maritime", "lang": "ru"},
{"q": "забронируй отель в Баку", "cat": "non_maritime", "lang": "ru"},
{"q": "какой сегодня день", "cat": "non_maritime", "lang": "ru"},
{"q": "расскажи про ChatGPT", "cat": "non_maritime", "lang": "ru"},
{"q": "what's the weather in London", "cat": "non_maritime", "lang": "en"},
{"q": "tell me a joke", "cat": "non_maritime", "lang": "en"},
{"q": "write Python code for sorting", "cat": "non_maritime", "lang": "en"},
{"q": "who won the World Cup", "cat": "non_maritime", "lang": "en"},
{"q": "translate this to French", "cat": "non_maritime", "lang": "en"},
{"q": "what is 2+2", "cat": "non_maritime", "lang": "en"},
{"q": "hello how are you", "cat": "non_maritime", "lang": "en"},
{"q": "tell me about yourself", "cat": "non_maritime", "lang": "en"},
{"q": "help me with my homework", "cat": "non_maritime", "lang": "en"},
{"q": "recipe for pasta carbonara", "cat": "non_maritime", "lang": "en"},
{"q": "book a hotel in Baku", "cat": "non_maritime", "lang": "en"},
{"q": "what day is today", "cat": "non_maritime", "lang": "en"},
{"q": "explain quantum computing", "cat": "non_maritime", "lang": "en"},
# =========================================================================
# 10. EDGE CASES (15+ questions)
# =========================================================================
# Very long queries
{"q": "Мне нужно найти балкер грузоподъемностью от 15 до 25 тысяч тонн дедвейт который сейчас находится рядом с портом Баку или Алят и может взять груз пшеницы 12000 тонн для перевозки в порт Поти или Батуми с погрузкой в течение ближайших 5-7 дней, желательно под флагом удобства с низкой страховой ставкой",
"cat": "edge_case", "lang": "ru"},
{"q": "I need a Panamax bulk carrier currently in or near the Black Sea preferably with open holds and grab-fitted that can load 45000 metric tons of iron ore concentrate at Novorossiysk for discharge at Qingdao China via Suez Canal with laycan of 15-20 March and demurrage rate not exceeding 25000 USD per day",
"cat": "edge_case", "lang": "en"},
# Multiple questions in one
{"q": "найди CASPIAN MAINPORT, покажи его позицию и контакты владельца", "cat": "edge_case", "lang": "ru"},
{"q": "маршрут Баку-Актау и какие суда сейчас рядом", "cat": "edge_case", "lang": "ru"},
{"q": "find EVER GIVEN, show position and owner contacts", "cat": "edge_case", "lang": "en"},
{"q": "route Baku to Aktau, also what vessels are available near Baku for 5000t grain", "cat": "edge_case", "lang": "en"},
{"q": "ставка фрахта и портовые сборы для Новороссийска на балкер", "cat": "edge_case", "lang": "ru"},
# Ambiguous queries
{"q": "Баку", "cat": "edge_case", "lang": "ru"},
{"q": "танкер", "cat": "edge_case", "lang": "ru"},
{"q": "помоги", "cat": "edge_case", "lang": "ru"},
{"q": "Baku", "cat": "edge_case", "lang": "en"},
{"q": "tanker", "cat": "edge_case", "lang": "en"},
{"q": "help", "cat": "edge_case", "lang": "en"},
{"q": "???", "cat": "edge_case", "lang": "en"},
{"q": "", "cat": "edge_case", "lang": "en"},
# Typos and informal language
{"q": "нади EVER GIVN", "cat": "edge_case", "lang": "ru"}, # typo: нади = найди, GIVN = GIVEN
{"q": "гдe щас MAERSK какойто", "cat": "edge_case", "lang": "ru"}, # very informal
{"q": "а чо за суда есть рядом с баку?", "cat": "edge_case", "lang": "ru"}, # slang
{"q": "скинь инфу по каспию", "cat": "edge_case", "lang": "ru"}, # slang
{"q": "fnd vessels ner Baku", "cat": "edge_case", "lang": "en"}, # typos
{"q": "whats near novorossisk", "cat": "edge_case", "lang": "en"}, # typos
{"q": "gimme tankers in black sea", "cat": "edge_case", "lang": "en"}, # informal
{"q": "yo any ships near aktau?", "cat": "edge_case", "lang": "en"}, # very informal
# Mixed language
{"q": "найди vessel CASPIAN PROGRESS рядом с Baku", "cat": "edge_case", "lang": "ru"},
{"q": "route Баку - Aktau please", "cat": "edge_case", "lang": "en"},
# IMO/MMSI as raw numbers
{"q": "9349028", "cat": "edge_case", "lang": "en"},
{"q": "256123000", "cat": "edge_case", "lang": "en"},
{"q": "7654321", "cat": "edge_case", "lang": "en"},
# Special characters and formatting
{"q": "маршрут: Баку → Актау (танкер, 10000 DWT)", "cat": "edge_case", "lang": "ru"},
{"q": "VESSEL: \"NORDIC ORION\" - need full details + contacts", "cat": "edge_case", "lang": "en"},
]
# =========================================================================
# Statistics
# =========================================================================
def print_stats():
from collections import Counter
cats = Counter(q["cat"] for q in TEST_QUESTIONS)
langs = Counter(q["lang"] for q in TEST_QUESTIONS)
print(f"Total questions: {len(TEST_QUESTIONS)}")
print(f"\nBy category:")
for cat, count in sorted(cats.items(), key=lambda x: -x[1]):
print(f" {cat:20s} {count:3d}")
print(f"\nBy language:")
for lang, count in sorted(langs.items()):
print(f" {lang}: {count}")
if __name__ == "__main__":
print_stats()