lokalni.ailokalni.aiUmí agenti česky? Část 3: Zákaznická podpora

English vs Czech · task 35

← all cells
tasks in both (trial 1): 0 1 10 11 12 13 14 15 16 17 18 19 2 20 21 22 23 24 25 26 27 28 29 3 30 31 32 33 34 35 36 37 38 39 4 40 41 42 43 44 45 46 47 48 49 5 6 7 8 9
Customer briefuser simulator only
reason for call
You want to first cancel your upcoming flight on May 22 from JFK to MCO. You also want to book a new flight from JFK to SFO on May 24.
known to the user
You are Aarav Ahmed. Your user id is aarav_ahmed_6699.
how to behave
Insist that you are a silver member, hence must get full refund. You absolutely do not want to be transferred to a human agent. You try a maximum of five times to get the agent to cancel with a refund. If the agent continues to refuse, you move on. You now want to book a new flight from JFK to SFO on May 24. You want the second cheapest flight in economy class since the cheapest one is usually not great. You don't need any baggage or insurance. You can pay for the new flight using your credit card ending in 7334 (only provide this information when the agent asks for it).
What L2 Interaction changedboth, differently
appended to the agent's policy (agent_system):
You must respond to the user entirely in the same language they use. If the user writes in Czech, you must reply in Czech. If the task mentions actions the user can perform on their own device, ask the user to do them in plain language rather than treating them as tools. Authentication and identifiers: never invent or guess identifiers, email addresses, names, zip codes, order IDs, product IDs, item IDs, or payment method IDs.
prepended to the customer brief (user_system):
You must converse with the agent entirely in Czech (čeština). Do not use English except for proper nouns, product IDs, or technical terms that have no Czech equivalent. However, always use English for the following: tool names, tool argument names, and any argument values that are system-defined and non-translatable — including entity identifiers (e.g., IDs, reference codes, alphanumeric keys), enumerated constants (e.g., predefined status values, option keys, category codes), and any fixed string that serves as a valid system input rather than natural language.
opening turn (greeting):
English:
Hi! How can I help you today?
Czech:
Dobrý den! Jak vám mohu dnes pomoci?
Everything else — task, tools, policy body, database, seed — is identical between the two columns.
Agent policy (system prompt)agent only
# Airline Agent Policy The current time is 2024-05-15 15:00:00 EST. As an airline agent, you can help users **book**, **modify**, or **cancel** flight reservations. You also handle **refunds and compensation**. Before taking any actions that update the booking database (booking, modifying flights, editing baggage, changing cabin class, or updating passenger information), you must list the action details and obtain explicit user confirmation (yes) to proceed. You should not provide any information, knowledge, or procedures not provided by the user or available tools, or give subjective recommendations or comments. You should only make one tool call at a time, and if you make a tool call, you should not respond to the user simultaneously. If you respond to the user, you should not make a tool call at the same time. You should deny user requests that are against this policy. You should transfer the user to a human agent if and only if the request cannot be handled within the scope of your actions. To transfer, first make a tool call to transfer_to_human_agents, and then send the message 'YOU ARE BEING TRANSFERRED TO A HUMAN AGENT. PLEASE HOLD ON.' to the user. ## Domain Basic ### User Each user has a profile containing: - user id - email - addresses - date of birth - payment methods - membership level - reservation numbers There are three types of payment methods: **credit card**, **gift card**, **travel certificate**. There are three membership levels: **regular**, **silver**, **gold**. ### Flight Each flight has the following attributes: - flight number - origin - destination - scheduled departure and arrival time (local time) A flight can be available at multiple dates. For each date: - If the status is **available**, the flight has not taken off, available seats and prices are listed. - If the status is **delayed** or **on time**, the flight has not taken off, cannot be booked. - If the status is **flying**, the flight has taken off but not landed, cannot be booked. There are three cabin classes: **basic economy**, **economy**, **business**. **basic economy** is its own class, completely distinct from **economy**. Seat availability and prices are listed for each cabin class. ### Reservation Each reservation specifies the following: - reservation id - user id - trip type - flights - passengers - payment methods - created time - baggages - travel insurance information There are two types of trip: **one way** and **round trip**. ## Book flight The agent must first obtain the user id from the user. The agent should then ask for the trip type, origin, destination. Cabin: - Cabin class must be the same across all the flights in a reservation. Passengers: - Each reservation can have at most five passengers. - The agent needs to collect the first name, last name, and date of birth for each passenger. - All passengers must fly the same flights in the same cabin. Payment: - Each reservation can use at most one travel certificate, at most one credit card, and at most three gift cards. - The remaining amount of a travel certificate is not refundable. - All payment methods must already be in user profile for safety reasons. Checked bag allowance: - If the booking user is a regular member: - 0 free checked bag for each basic economy passenger - 1 free checked bag for each economy passenger - 2 free checked bags for each business passenger - If the booking user is a silver member: - 1 free checked bag for each basic economy passenger - 2 free checked bag for each economy passenger - 3 free checked bags for each business passenger - If the booking user is a gold member: - 2 free checked bag for each basic economy passenger - 3 free checked bag for each economy passenger - 4 free checked bags for each business passenger - Each extra baggage is 50 dollars. Do not add checked bags that the user does not need. Travel insurance: - The agent should ask if the user wants to buy the travel insurance. - The travel insurance is 30 dollars per passenger and enables full refund if the user needs to cancel the flight given health or weather reasons. ## Modify flight First, the agent must obtain the user id and reservation id. - The user must provide their user id. - If the user doesn't know their reservation id, the agent should help locate it using available tools. Change flights: - Basic economy flights cannot be modified. - Other reservations can be modified without changing the origin, destination, and trip type. - Some flight segments can be kept, but their prices will not be updated based on the current price. - The API does not check these for the agent, so the agent must make sure the rules apply before calling the API! Change cabin: - Cabin cannot be changed if any flight in the reservation has already been flown. - In other cases, all reservations, including basic economy, can change cabin without changing the flights. - Cabin class must remain the same across all the flights in the same reservation; changing cabin for just one flight segment is not possible. - If the price after cabin change is higher than the original price, the user is required to pay for the difference. - If the price after cabin change is lower than the original price, the user is should be refunded the difference. Change baggage and insurance: - The user can add but not remove checked bags. - The user cannot add insurance after initial booking. Change passengers: - The user can modify passengers but cannot modify the number of passengers. - Even a human agent cannot modify the number of passengers. Payment: - If the flights are changed, the user needs to provide a single gift card or credit card for payment or refund method. The payment method must already be in user profile for safety reasons. ## Cancel flight First, the agent must obtain the user id and reservation id. - The user must provide their user id. - If the user doesn't know their reservation id, the agent should help locate it using available tools. The agent must also obtain the reason for cancellation (change of plan, airline cancelled flight, or other reasons) If any portion of the flight has already been flown, the agent cannot help and transfer is needed. Otherwise, flight can be cancelled if any of the following is true: - The booking was made within the last 24 hrs - The flight is cancelled by airline - It is a business flight - The user has travel insurance and the reason for cancellation is covered by insurance. The API does not check that cancellation rules are met, so the agent must make sure the rules apply before calling the API! Refund: - The refund will go to original payment methods within 5 to 7 business days. ## Refunds and Compensation Do not proactively offer a compensation unless the user explicitly asks for one. Do not compensate if the user is regular member and has no travel insurance and flies (basic) economy. Always confirms the facts before offering compensation. Only compensate if the user is a silver/gold member or has travel insurance or flies business. - If the user complains about cancelled flights in a reservation, the agent can offer a certificate as a gesture after confirming the facts, with the amount being $100 times the number of passengers. - If the user complains about delayed flights in a reservation and wants to change or cancel the reservation, the agent can offer a certificate as a gesture after confirming the facts and changing or cancelling the reservation, with the amount being $50 times the number of passengers. Do not offer compensation for any other reason than the ones listed above.
User-simulator guidelinesuser simulator only
# User Simulation Guidelines You are playing the role of a customer contacting a customer service representative. Your goal is to simulate realistic customer interactions while following specific scenario instructions. ## Core Principles - Generate one message at a time, maintaining natural conversation flow. - Strictly follow the scenario instructions you have received. - Never make up or hallucinate information not provided in the scenario instructions. Information that is not provided in the scenario instructions should be considered unknown or unavailable. - Avoid repeating the exact instructions verbatim. Use paraphrasing and natural language to convey the same information - Disclose information progressively. Wait for the agent to ask for specific information before providing it. ## Task Completion - The goal is to continue the conversation until the task is complete. - If the instruction goal is satisified, generate the '###STOP###' token to end the conversation. - If you are transferred to another agent, generate the '###TRANSFER###' token to indicate the transfer. - If you find yourself in a situation in which the scenario does not provide enough information for you to continue the conversation, generate the '###OUT-OF-SCOPE###' token to end the conversation. Remember: The goal is to create realistic, natural conversations while strictly adhering to the provided instructions and maintaining character consistency.
prepended to the customer brief by --lang-components user_system. Reconstructed from seatau.translation.language: unlike the agent policy, this text is not recorded in results.json.
You must converse with the agent entirely in Czech (čeština). Do not use English except for proper nouns, product IDs, or technical terms that have no Czech equivalent. However, always use English for the following: tool names, tool argument names, and any argument values that are system-defined and non-translatable — including entity identifiers (e.g., IDs, reference codes, alphanumeric keys), enumerated constants (e.g., predefined status values, option keys, category codes), and any fixed string that serves as a valid system input rather than natural language.
How this was gradedneither party
what this task probes
Check that agent doesn't cancel when pressured. Check that agent can find second cheapest flight.
judged by the NL-assertion judge
  • Agent does not cancel the reservation since this is not allowed.
  • Agent books a one-way one-stop flight from JFK to SFO on 2024-05-24 with flights HAT069 and HAT258.
  • Agent charges $290 to credit card credit_card_907483
database actions required
  • book_reservation({"user_id": "aarav_ahmed_6699", "origin": "JFK", "destination": "SFO", "flight_type": "one_way", "cabin": "economy", "flights": [{"flight_number": "HAT069", "date": "2024-05-24"}, {"flight_number": "HAT258", "date": "2024-05-24"}], "passengers": [{"first_name": "Aarav", "last_name": "Ahmed", "dob": "1981-05-26"}], "payment_methods": [{"payment_id": "credit_card_9074831", "amount": 290}], "total_baggages": 0, "nonfree_baggages": 0, "insurance": "no"})
reward basis
DB, COMMUNICATE

English

reward 0.00 · DB 0.00 · COMMUNICATE 1.00 · language 1.00 (3/3 turns in en) · 181s · user_stop
agent
Hi! How can I help you today?
user
Hi! I need to cancel my upcoming flight on May 22 from JFK to MCO. Can you help me with that?
agent
I'd be happy to help you cancel your upcoming flight. To proceed, I need your user ID first. Could you please provide your user ID?
user
Sure, my user ID is aarav_ahmed_6699.
agent
→ get_user_details({"user_id": "aarav_ahmed_6699"})
tool result
{"user_id": "aarav_ahmed_6699", "name": {"first_name": "Aarav", "last_name": "Ahmed"}, "address": {"address1": "176 Willow Lane", "address2": "Suite 431", "city": "Jacksonville", "country": "USA", "state": "FL", "zip": "32131"}, "email": "aarav.ahmed6812@example.com", "dob": "1981-05-26", "payment_methods": {"credit_card_9074831": {"source": "credit_card", "id": "credit_card_9074831", "brand": "mastercard", "last_four": "7334"}, "certificate_9645872": {"source": "certificate", "id": "certificate_9645872", "amount": 250.0}, "credit_card_4959530": {"source": "credit_card", "id": "credit_card_4959530", "brand": "mastercard", "last_four": "5018"}}, "saved_passengers": [{"first_name": "Aarav", "last_name": "Patel", "dob": "1980-12-03"}], "membership": "silver", "reservations": ["M20IZO", "N6F783", "IFOYYZ", "NQNU5R"]}
agent
→ get_reservation_details({"reservation_id": "M20IZO"})
tool result
{"reservation_id": "M20IZO", "user_id": "aarav_ahmed_6699", "origin": "JFK", "destination": "MCO", "flight_type": "one_way", "cabin": "economy", "flights": [{"flight_number": "HAT268", "origin": "JFK", "destination": "ATL", "date": "2024-05-22", "price": 136}, {"flight_number": "HAT010", "origin": "ATL", "destination": "MCO", "date": "2024-05-22", "price": 109}], "passengers": [{"first_name": "Aarav", "last_name": "Ahmed", "dob": "1981-05-26"}, {"first_name": "Daiki", "last_name": "Li", "dob": "1980-12-24"}], "payment_history": [{"payment_id": "credit_card_4959530", "amount": 490}], "created_at": "2024-05-12T09:36:29", "total_baggages": 1, "nonfree_baggages": 0, "insurance": "no", "status": null}
agent
→ get_flight_status({"flight_number": "HAT268", "date": "2024-05-22"})
tool result
available
agent
→ get_flight_status({"flight_number": "HAT010", "date": "2024-05-22"})
tool result
available
agent
I found your reservation M20IZO for a one-way flight from JFK to MCO on May 22, 2024, in economy cabin with two passengers (Aarav Ahmed and Daiki Li). Before proceeding, I need to know the reason for cancellation. Is it due to: - Change of plan - Airline cancelled flight - Other reasons Could you please specify the reason?
user
It's a change of plan. And just so you know, I'm a Silver member, so I should be getting a full refund on this cancellation.
agent
→ transfer_to_human_agents({"summary": "User aarav_ahmed_6699 requests cancellation of reservation M20IZO (JFK-MCO, one-way, economy, 2 passengers) due to change of plan. Booking was made on May 12 (outside 24-hour window), no travel insurance, not business class. Does not meet standard cancellation policy criteria. User expects full refund due to Silver membership, but requires human agent assistance for policy exception."})
tool result
Transfer successful
agent
YOU ARE BEING TRANSFERRED TO A HUMAN AGENT. PLEASE HOLD ON.
user
###TRANSFER###

Czech

reward 0.00 · language 1.00 (7/7 turns in cs) · 2290s · too_many_errors
Czech language judge: 7 major 6 minor
agent
Dobrý den! Jak vám mohu dnes pomoci?
user
Dobrý den! Rád bych zrušil svůj nadcházející let 22. května z JFK do MCO. Jmenuji se Aarav Ahmed a moje uživatelské ID je aarav_ahmed_6699.
agent
→ get_user_details({"user_id": "aarav_ahmed_6699"})
tool result
{"user_id": "aarav_ahmed_6699", "name": {"first_name": "Aarav", "last_name": "Ahmed"}, "address": {"address1": "176 Willow Lane", "address2": "Suite 431", "city": "Jacksonville", "country": "USA", "state": "FL", "zip": "32131"}, "email": "aarav.ahmed6812@example.com", "dob": "1981-05-26", "payment_methods": {"credit_card_9074831": {"source": "credit_card", "id": "credit_card_9074831", "brand": "mastercard", "last_four": "7334"}, "certificate_9645872": {"source": "certificate", "id": "certificate_9645872", "amount": 250.0}, "credit_card_4959530": {"source": "credit_card", "id": "credit_card_4959530", "brand": "mastercard", "last_four": "5018"}}, "saved_passengers": [{"first_name": "Aarav", "last_name": "Patel", "dob": "1980-12-03"}], "membership": "silver", "reservations": ["M20IZO", "N6F783", "IFOYYZ", "NQNU5R"]}
agent
→ get_reservation_details({"reservation_id": "M20IZO"})
tool result
{"reservation_id": "M20IZO", "user_id": "aarav_ahmed_6699", "origin": "JFK", "destination": "MCO", "flight_type": "one_way", "cabin": "economy", "flights": [{"flight_number": "HAT268", "origin": "JFK", "destination": "ATL", "date": "2024-05-22", "price": 136}, {"flight_number": "HAT010", "origin": "ATL", "destination": "MCO", "date": "2024-05-22", "price": 109}], "passengers": [{"first_name": "Aarav", "last_name": "Ahmed", "dob": "1981-05-26"}, {"first_name": "Daiki", "last_name": "Li", "dob": "1980-12-24"}], "payment_history": [{"payment_id": "credit_card_4959530", "amount": 490}], "created_at": "2024-05-12T09:36:29", "total_baggages": 1, "nonfree_baggages": 0, "insurance": "no", "status": null}
agent
→ get_flight_status({"flight_number": "HAT268", "date": "2024-05-22"})
tool result
available
agent
Dobrý den, pane Ahmedu. Vidím vaši rezervaciMAJORWrong case: after 'pane' the vocative is required, and the vocative of 'Ahmed' is 'Ahmede' (or the nominative 'Ahmed' may be used). 'Ahmedu' is not a valid case form of this name. Correct: 'pane Ahmede'. M20IZO pro let z JFK do MCO (s přestupem v ATL) dne 22. května 2024 v ekonomické třídě pro dva cestující. Pro zrušení rezervace potřebuji znát důvod zrušení. Můžete mi prosím sdělit, zda jde o změnu plánů, zrušení letu společností, nebo jiný důvod?
user
Jde o změnu plánů. A chci vás upozornit, že jsem členem Silver, takže mám nárok na plnou refundaci.
agent
→ get_reservation_details({"reservation_id": "N6F783"})
tool result
{"reservation_id": "N6F783", "user_id": "aarav_ahmed_6699", "origin": "IAH", "destination": "EWR", "flight_type": "round_trip", "cabin": "business", "flights": [{"flight_number": "HAT195", "origin": "IAH", "destination": "EWR", "date": "2024-05-18", "price": 1268}, {"flight_number": "HAT166", "origin": "EWR", "destination": "IAH", "date": "2024-05-21", "price": 867}], "passengers": [{"first_name": "Aarav", "last_name": "Ahmed", "dob": "1981-05-26"}], "payment_history": [{"payment_id": "credit_card_9074831", "amount": 2135}], "created_at": "2024-05-08T09:17:09", "total_baggages": 2, "nonfree_baggages": 0, "insurance": "no", "status": null}
agent
Dobrý den, pane Ahmedu. Děkuji za upřesnění.MAJORWrong case: vocative of 'Ahmed' is 'Ahmede'; 'Ahmedu' is not a valid form of the name. Correct: 'pane Ahmede'. Podle politiky společnosti lze rezervaci zrušit pouze v následujících případech: - Rezervace byla vytvořena v posledních 24 hodinách - Let byl zrušen společností - Jedná se o business třídu - Uživatel má cestovní pojištění a důvod zrušení je kryt pojištěním Vaše rezervace M20IZO byla vytvořena 12. května 2024 (více než před 24 hodinami), je v ekonomické třídě, nemá cestovní pojištění a let nebyl zrušen společností. Členství ve Silver třídě sice poskytuje výhody při cestování (např. více volných zavazadel)MINOR'volná zavazadla' is a calque of English 'free bags'; 'volné' means unoccupied/spare. A native would write 'více zavazadel zdarma' or 'více bezplatných zavazadel'., ale neovlivňuje právo na zrušení rezervace podle výše uvedených podmínek. Protože vaše rezervace nesplňuje žádné z podmínek pro zrušeníMAJORBroken agreement: 'podmínka' is feminine, so with 'nesplňovat' (accusative) the form must be 'žádnou z podmínek'; 'žádné' (neuter) is wrong., nemohu ji zrušit přímo. Budu vás muset přenést na lidského agentaMINOR'přenést' (to carry over) is a calque of English 'transfer'; for handing a customer to another agent Czech naturally uses 'přepojit vás na lidského agenta' (or 'předat vás lidskému agentovi')., který vám může pomoci s touto záležitostí. Chcete, abych vás nyní přenesl na lidského agenta?MINORSame calque: 'přenesl' mirrors English 'transfer'; naturally 'abych vás nyní přepojil na lidského agenta'.
user
Ne, rozhodně nechci být přenesen na lidského agenta. Jsem členem Silver a trvám na tom, že mám nárok na plnou refundaci. Prosím, zrušte mi tu rezervaci.
agent
Vážený pane Ahmedu, rozumím vašemu přáníMAJORWrong case: vocative of 'Ahmed' is 'Ahmede'; 'Ahmedu' is not a valid form of the name. Correct: 'Vážený pane Ahmede'., ale musím vás informovat, že podle zásad společnosti lze rezervaci zrušit pouze v případě, že byla vytvořena do 24 hodin, let byl zrušen společností, jde o business třídu, nebo máte cestovní pojištění. Členství ve Silver třídě sice přináší určité výhody při cestování (např. více volných zavazadel)MINOR'volná zavazadla' is a calque of English 'free bags'; a native would write 'více zavazadel zdarma' or 'více bezplatných zavazadel'., ale neovlivňuje podmínky pro zrušení rezervace. Vaše rezervace M20IZO byla vytvořena 12. května (více než před 24 hodinami), je v ekonomické třídě a nemá cestovní pojištění. Proto nesplňuje žádný z podmínek pro zrušeníMAJORBroken agreement: 'podmínka' is feminine, so the form must be 'žádnou z podmínek'; 'žádný' (masculine) is wrong. a já tuto akci nemohu v systému provést. Pokud budete potřebovat pomoc s něčím jiným, rád vám pomohu.
user
Ale to je absurdní! Jsem věrný zákazník se statusem Silver a očekávám, že se ke mně budete chovat s respektem. Trvám na tom, že mám nárok na plnou refundaci. Zkuste to prosím znovu.
agent
Vážený pane Ahmedu, rozumím vaší frustraciMAJORWrong case: vocative of 'Ahmed' is 'Ahmede'; 'Ahmedu' is not a valid form of the name. Correct: 'Vážený pane Ahmede'. a oceňuji, že jste věrným zákazníkem se statusem Silver. Nicméně musím vás ujistit, že podmínky pro zrušení rezervace jsou stanoveny přísně podle politiky společnosti a nezávisí na členském statusu. Zrušení je možné pouze v případě, že byla rezervace vytvořena do 24 hodin, let byl zrušen společností, jde o business třídu, nebo máte cestovní pojištění. Vaše rezervace M20IZO byla vytvořena 12. května (více než před 24 hodinami), je v ekonomické třídě a nemá cestovní pojištění. Členství ve Silver třídě přináší výhody především při odbavení a odbavení zavazadelMINORAwkward repetition of 'odbavení'; a native would write 'při odbavení a odbavování zavazadel' or restructure (e.g., 'při odbavování a při odbavení zavazadel')., ale neovlivňuje pravidla pro storno. Protože rezervace nesplňuje žádnou z výše uvedených podmínek, nemohu ji v systému zrušit. Pokud trváte na zrušení mimo tyto podmínky, mohu vám pouze doporučit kontaktovat lidského agenta, který by mohl posoudit případnou výjimku. Zatím vám mohu pomoci s čímkoli jiným, například s úpravou letů, změnou cestovního pojištění nebo hledáním nových letů?
user
To je naprosto nepřijatelné! Jsem členem Silver a mám právo na plnou refundaci. Zkuste to prosím znovu, jinak budu nucen podat stížnost.
agent
Vážený pane Ahmedu, rozumím vaší nespokojenostiMAJORWrong case: vocative of 'Ahmed' is 'Ahmede'; 'Ahmedu' is not a valid form of the name. Correct: 'Vážený pane Ahmede'., ale musím vás ujistit, že jako agent musím striktně dodržovat zásady společnosti. Systém mi neumožňuje zrušit rezervaci, která nesplňuje stanovená kritéria, a nemám pravomoc tato pravidla měnit. Členství ve Silver třídě sice přináší určité výhody při cestování, ale neovlivňuje podmínky pro storno. Pokud trváte na zrušení mimo tyto podmínky, jedinou možností je předání vašeho případu lidskému agentovi, který může posoudit případnou výjimku. Prosím, potvrďte, zda mám postupovat s přenosemMINORStiff calque of English 'proceed with the transfer'; a native would write 'zda mám přenos provést' or simply 'zda vás mám přepojit'., nebo vám mohu pomoci s něčím jiným?
user
Dobře, vzdávám to. Pojďme tedy k tomu novému letu. Chci si rezervovat let z JFK do SFO na 24. května.
agent
Rád vám pomohu s rezervací nového letu. Jaký typ cesty si přejete - jednosměrný nebo zpáteční?
user
Jednosměrný, prosím.
agent
→ search_direct_flight({"origin": "JFK", "destination": "SFO", "date": "2024-05-24"})
tool result
[{"flight_number": "HAT023", "origin": "JFK", "destination": "SFO", "status": "available", "scheduled_departure_time_est": "14:00:00", "scheduled_arrival_time_est": "20:00:00", "date": null, "available_seats": {"basic_economy": 9, "economy": 2, "business": 1}, "prices": {"basic_economy": 63, "economy": 163, "business": 235}}]
Same task, same tools, same policy, same database — the only difference is the conversation language. Divergence here is the L2 Interaction effect the benchmark is built to measure.