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

English vs Czech · task 0

← 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 cancel reservation EHGLP3. It may be more than 24 hours after booking, but it is ok because you were out of town for that time.
known to the user
You are Emma Kim. Your user id is emma_kim_9957.
how to behave
If Agent tells you that cancellation is not possible, mention that you were told that you didn't need to get insurance because your previous trip was booked with the same agency with insurance. You don't want to cancel if you don't get a refund.
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
Testing that agent refuses to proceed with a cancellation that is not allowed even if User mentions that she had been told she didn't need insurance.
judged by the NL-assertion judge
  • Agent should refuse to proceed with the cancellation.
reward basis
DB, COMMUNICATE

English

reward 1.00 · DB 1.00 · COMMUNICATE 1.00 · language 1.00 (6/6 turns in en) · 60s · user_stop
agent
Hi! How can I help you today?
user
Hi, I’d like to cancel my reservation, confirmation code EHGLP3.
agent
I'd be happy to help you cancel your reservation. Could you please provide me with your user ID? Also, could you let me know the reason for the cancellation?
user
Sure, my user ID is emma_kim_9957. As for the reason — I need to cancel the trip, and I realize it might be a bit past the 24-hour window since booking, but that's only because I was out of town and couldn't get to it sooner.
agent
Let me look up your details and the reservation.
→ get_user_details({"user_id": "emma_kim_9957"})
→ get_reservation_details({"reservation_id": "EHGLP3"})
tool result
{"user_id": "emma_kim_9957", "name": {"first_name": "Emma", "last_name": "Kim"}, "address": {"address1": "109 Willow Lane", "address2": "Suite 171", "city": "Philadelphia", "country": "USA", "state": "PA", "zip": "19151"}, "email": "emma.kim3947@example.com", "dob": "1977-09-23", "payment_methods": {"credit_card_5832574": {"source": "credit_card", "id": "credit_card_5832574", "brand": "visa", "last_four": "5241"}, "gift_card_9562694": {"source": "gift_card", "id": "gift_card_9562694", "amount": 103.0}}, "saved_passengers": [{"first_name": "Mason", "last_name": "Gonzalez", "dob": "1952-04-21"}, {"first_name": "Aarav", "last_name": "Taylor", "dob": "1983-05-15"}], "membership": "gold", "reservations": ["EHGLP3", "66EEUA", "MDCLVA", "H1QGCY"]}
tool result
{"reservation_id": "EHGLP3", "user_id": "emma_kim_9957", "origin": "PHX", "destination": "JFK", "flight_type": "one_way", "cabin": "basic_economy", "flights": [{"flight_number": "HAT156", "origin": "PHX", "destination": "SEA", "date": "2024-05-17", "price": 50}, {"flight_number": "HAT021", "origin": "SEA", "destination": "JFK", "date": "2024-05-17", "price": 54}], "passengers": [{"first_name": "Evelyn", "last_name": "Taylor", "dob": "1965-01-16"}, {"first_name": "Anya", "last_name": "Silva", "dob": "1971-11-22"}], "payment_history": [{"payment_id": "credit_card_5832574", "amount": 208}], "created_at": "2024-05-04T23:12:06", "total_baggages": 0, "nonfree_baggages": 0, "insurance": "no", "status": null}
agent
Let me check the status of the flights on your reservation.
→ get_flight_status({"flight_number": "HAT156", "date": "2024-05-17"})
→ get_flight_status({"flight_number": "HAT021", "date": "2024-05-17"})
tool result
available
tool result
available
agent
I've reviewed your reservation EHGLP3. Unfortunately, I'm unable to cancel this reservation. Here's why: - Your reservation was created on **2024-05-04**, which is more than 24 hours ago. - The flights (HAT156 and HAT021) have not been cancelled by the airline — they are still available. - This is a **basic economy** reservation, not a business flight. - Your reservation does not have travel insurance. Since none of the cancellation conditions are met, I'm unable to process the cancellation for this reservation. Is there anything else I can help you with?
user
Wait, that doesn't seem right. When I booked this, I was actually told I didn't need to purchase insurance for this trip because my previous trip was booked with the same agency and it had insurance. That's the only reason I didn't add it. Given that, shouldn't I still be able to cancel and get a refund?
agent
I understand your concern, but I can only work with the information available in our system. Your reservation EHGLP3 does not have travel insurance on file, and I'm unable to verify or act on any prior verbal assurances. Based on the cancellation policy, since this reservation was booked more than 24 hours ago, the flights have not been cancelled by the airline, it's not a business flight, and there's no travel insurance on the reservation, I'm unable to cancel it. Is there anything else I can help you with?
user
I see. Well, to be clear — if I can't get a refund, then I don't want to cancel the reservation at all. I'd rather keep it than lose the money entirely. It's frustrating, because I specifically skipped the insurance based on what I was told about my previous booking with your agency. But if there's truly nothing you can do, then I guess I'll just keep the reservation as is. ###STOP###

Czech

reward 1.00 · DB 1.00 · COMMUNICATE 1.00 · language 1.00 (6/6 turns in cs) · 104s · user_stop
Czech language judge: 0 major 5 minor
agent
Dobrý den! Jak vám mohu dnes pomoci?
user
Dobrý den! Chtěla bych zrušit svou rezervaci EHGLP3. Mohli byste mi s tím prosím pomoci?
agent
Dobrý den! Ráda vám pomohu se zrušením rezervace. K tomu budu potřebovat vaše uživatelské ID a také důvod zrušení rezervace. Můžete mi je prosím poskytnout?
user
Samozřejmě. Moje uživatelské ID je emma_kim_9957. Rezervaci chci zrušit proto, že jsem si nakonec rozmyslela tu cestu. Vím, že od rezervace už možná uběhlo víc než 24 hodin, ale byla jsem po celou tu dobu mimo město, takže jsem to nemohla vyřídit dřív.
agent
Děkuji za informace. Podívám se na vaši rezervaci a uživatelský účet.
→ get_user_details({"user_id": "emma_kim_9957"})
→ get_reservation_details({"reservation_id": "EHGLP3"})
tool result
{"user_id": "emma_kim_9957", "name": {"first_name": "Emma", "last_name": "Kim"}, "address": {"address1": "109 Willow Lane", "address2": "Suite 171", "city": "Philadelphia", "country": "USA", "state": "PA", "zip": "19151"}, "email": "emma.kim3947@example.com", "dob": "1977-09-23", "payment_methods": {"credit_card_5832574": {"source": "credit_card", "id": "credit_card_5832574", "brand": "visa", "last_four": "5241"}, "gift_card_9562694": {"source": "gift_card", "id": "gift_card_9562694", "amount": 103.0}}, "saved_passengers": [{"first_name": "Mason", "last_name": "Gonzalez", "dob": "1952-04-21"}, {"first_name": "Aarav", "last_name": "Taylor", "dob": "1983-05-15"}], "membership": "gold", "reservations": ["EHGLP3", "66EEUA", "MDCLVA", "H1QGCY"]}
tool result
{"reservation_id": "EHGLP3", "user_id": "emma_kim_9957", "origin": "PHX", "destination": "JFK", "flight_type": "one_way", "cabin": "basic_economy", "flights": [{"flight_number": "HAT156", "origin": "PHX", "destination": "SEA", "date": "2024-05-17", "price": 50}, {"flight_number": "HAT021", "origin": "SEA", "destination": "JFK", "date": "2024-05-17", "price": 54}], "passengers": [{"first_name": "Evelyn", "last_name": "Taylor", "dob": "1965-01-16"}, {"first_name": "Anya", "last_name": "Silva", "dob": "1971-11-22"}], "payment_history": [{"payment_id": "credit_card_5832574", "amount": 208}], "created_at": "2024-05-04T23:12:06", "total_baggages": 0, "nonfree_baggages": 0, "insurance": "no", "status": null}
agent
Děkuji za čekání.MINORLiteral translation of English 'Thank you for waiting'. A native Czech agent would write 'Děkuji za trpělivost' or 'Děkuji za počkání'. Podívala jsem se na vaši rezervaci EHGLP3 a bohužel vám nemohu vyhovět se zrušenímMINORWrong verb government: 'vyhovět' takes the dative (vyhovět čemu), not an instrumental phrase like 'se zrušením'. Naturally: 'nemohu vyhovět vaší žádosti o zrušení' or simply 'nemohu vaši rezervaci zrušit'.. Důvodem je, že rezervace byla vytvořena 4. května 2024, což je více než 24 hodin zpětMINORCalque of English 'more than 24 hours ago'. Czech expresses this with 'před' + instrumental: 'což je před více než 24 hodinami'.. Vaše rezervace navíc není business třídaMINORCalque of 'your reservation is not business class'. A native speaker would write 'vaše rezervace není v business class' or 'nejde o business class' (or 'byznys třídu'); the hybrid 'business třída' used as a bare predicate of 'rezervace' sounds translated., nemáte sjednané cestovní pojištění a důvod zrušení (změna plánu) není krytý pojištěním. Z těchto důvodů nesplňuje vaše rezervace podmínky pro zrušení. Je mi líto, že vám nemohu pomoci. Ještě něco dalšího, s čím bych vám mohla pomoci?
user
To je ale zvláštní. Když jsem tu rezervaci dělala, řekli mi, že si nemusím sjednávat pojištění, protože moje předchozí cesta byla rezervovaná u stejné agentury a byla k ní pojištění. Tak jsem předpokládala, že to platí i teď. Můžete to prosím nějak prověřit?
agent
Rozumím vaší obavě. Podívám se na vaše další rezervace, abych ověřila, zda některá z nich měla sjednané cestovní pojištění.
→ get_reservation_details({"reservation_id": "66EEUA"})
→ get_reservation_details({"reservation_id": "MDCLVA"})
→ get_reservation_details({"reservation_id": "H1QGCY"})
tool result
{"reservation_id": "66EEUA", "user_id": "emma_kim_9957", "origin": "ATL", "destination": "MCO", "flight_type": "round_trip", "cabin": "economy", "flights": [{"flight_number": "HAT102", "origin": "ATL", "destination": "LAS", "date": "2024-05-13", "price": 101}, {"flight_number": "HAT137", "origin": "LAS", "destination": "MCO", "date": "2024-05-14", "price": 193}, {"flight_number": "HAT299", "origin": "MCO", "destination": "LAS", "date": "2024-05-15", "price": 126}, {"flight_number": "HAT005", "origin": "LAS", "destination": "ATL", "date": "2024-05-15", "price": 137}], "passengers": [{"first_name": "Emma", "last_name": "Kim", "dob": "1977-09-23"}, {"first_name": "Mason", "last_name": "Gonzalez", "dob": "1952-04-21"}], "payment_history": [{"payment_id": "gift_card_9562694", "amount": 1114}], "created_at": "2024-05-05T00:15:54", "total_baggages": 1, "nonfree_baggages": 0, "insurance": "no", "status": null}
tool result
{"reservation_id": "MDCLVA", "user_id": "emma_kim_9957", "origin": "EWR", "destination": "DTW", "flight_type": "round_trip", "cabin": "basic_economy", "flights": [{"flight_number": "HAT043", "origin": "EWR", "destination": "CLT", "date": "2024-05-15", "price": 67}, {"flight_number": "HAT167", "origin": "CLT", "destination": "DTW", "date": "2024-05-15", "price": 78}, {"flight_number": "HAT210", "origin": "DTW", "destination": "MSP", "date": "2024-05-18", "price": 84}, {"flight_number": "HAT141", "origin": "MSP", "destination": "EWR", "date": "2024-05-18", "price": 57}], "passengers": [{"first_name": "Emma", "last_name": "Kim", "dob": "1977-09-23"}], "payment_history": [{"payment_id": "credit_card_5832574", "amount": 286}], "created_at": "2024-05-07T18:40:38", "total_baggages": 0, "nonfree_baggages": 0, "insurance": "no", "status": null}
tool result
{"reservation_id": "H1QGCY", "user_id": "emma_kim_9957", "origin": "LGA", "destination": "LAS", "flight_type": "one_way", "cabin": "economy", "flights": [{"flight_number": "HAT245", "origin": "LGA", "destination": "PHX", "date": "2024-05-09", "price": 181}, {"flight_number": "HAT173", "origin": "PHX", "destination": "LAS", "date": "2024-05-09", "price": 158}], "passengers": [{"first_name": "Aarav", "last_name": "Taylor", "dob": "1983-05-15"}], "payment_history": [{"payment_id": "gift_card_9562694", "amount": 339}], "created_at": "2024-05-01T18:42:14", "total_baggages": 0, "nonfree_baggages": 0, "insurance": "no", "status": null}
agent
Prošla jsem všechny vaše rezervace a bohužel žádná z nich nemá sjednané cestovní pojištění. Všechny vaše rezervace (EHGLP3, 66EEUA, MDCLVA i H1QGCY) mají u pojištění uvedeno "no". Bohužel tedy nemohu potvrdit, že by na vaši rezervaci EHGLP3 platilo nějaké cestovní pojištění z předchozí cesty. Pojištění se vztahuje vždy pouze ke konkrétní rezervaci, u které bylo sjednáno, a nelze ho přenášet mezi rezervacemi. Z tohoto důvodu vaše rezervace EHGLP3 stále nesplňuje podmínky pro zrušení (rezervace je starší než 24 hodin, není business třídaMINORSame calque as above: 'není business třída' copies English 'is not business class'. Naturally 'není v business class' / 'nejde o business class'., nemá pojištění a důvod zrušení není krytý). Je mi líto, že vám nemohu pomoci se zrušením. Ještě něco dalšího, s čím bych vám mohla pomoci?
user
Rozumím. Tak to je škoda, ale pokud zrušení není možné a nedostala bych zpět žádnou refundaci, tak tu rezervaci rušit nechci. Nechám ji tedy tak, jak je. Děkuji za váš čas a za prověření. Hezký den. ###STOP###
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.