# GCAS RAG Knowledge Base — Query Taxonomy & Engineering Test Matrix Version 1.0 | April 2026 | Blue Machines (Apna) --- ## Overview This document is a MECE taxonomy of every KB query type, multi-turn conversation pattern, fuzzy name variant, and edge case that the GCAS Voice AI agent's RAG knowledge base must handle correctly. **Purposes:** 1. Engineering test matrix for robust KB search logic 2. Prompt-tuning reference for correct routing (When-to-Invoke) 3. Demo preparation for representative scenarios 4. QA regression suite for KB retrieval accuracy **KB coverage:** ~44,500 rows across 4 tables, covering 15 universities, 2,506 unique colleges, 267 unique programs, 37 districts. --- ## Routing Buckets Every student query falls into exactly one of three buckets: | Bucket | Trigger | Tool | |---|---|---| | **Bucket 1** | Personalized recommendations based on student marks/stream/city | `get_college_recommendations` (Function Tool) | | **Bucket 2** | Factual question about a specific college, university, program, or facility | RAG Knowledge Base (this document) | | **Bucket 3** | GCAS process, boundary routing, identity, off-topic | Prompt-Native (no tool) | Section A covers Bucket 2 exhaustively. Section B shows transitions across all three. --- ## Section A: Single-Turn KB Queries Standalone questions that trigger a KB lookup. Each entry includes: query type, example student speech, KB fields required, conversation flow, and edge cases. --- ### A.1 College-Level Queries The most common query category. Student names or references a specific college and asks about one or more of its attributes. KB must resolve the college name (including partial, abbreviated, or colloquial references per Section C) and return the requested field(s). | ID | Query Type | Example Student Speech | KB Fields Required | Flow | Edge Cases / Gotchas | |---|---|---|---|---|---| | A.1.1 | Fee (General) | Gujarat Commerce College ki fees kitni hai? | fee_general, college_name, program_name | G (KB) | Multiple programs at same college have different fees. Agent must clarify which program. If student is female, proactively mention fee_girls if it differs. | | A.1.2 | Fee (Girls-specific) | Ladkiyon ke liye M N College mein fees kya hai? | fee_girls, fee_general, college_name, program_name, education_mode | G (KB) | fee_girls may be blank or same as fee_general. If education_mode is Girls-Only, mention that. If student gender is unknown and they ask about girls fee, do not assume gender. | | A.1.3 | Hostel Availability | Kya Government Commerce College Ahmedabad mein hostel hai? | boys_hostel, girls_hostel, college_name | G (KB) | Must return the correct hostel field based on student gender if known. If gender unknown, share both. Agent cannot answer hostel capacity, room availability, or booking process. | | A.1.4 | NAAC Grade | MSU ka NAAC grade kya hai? | naac_grade, college_name, university | G (KB) | MSU has multiple faculties, each a separate row. Student may mean the university overall (all A+) or a specific faculty. NAAC may be blank for many colleges. Agent should say the grade is not available in data rather than assuming no accreditation. | | A.1.5 | Affiliation Type | R C College of Commerce permanently affiliated hai ya temporary? | affiliation_type, college_name, university | G (KB) | Only relevant when comparing colleges or when a student specifically asks. System prompt says mention Temporary affiliation only in comparison context, but if student asks directly, answer. | | A.1.6 | College Type | Ye government college hai ya private? | college_type, college_name | G (KB) | Students say 'private' but KB uses 'Self-Finance'. Agent must map the terminology. Students may also say 'sarkari' (government in Hindi/Gujarati). Seven college types exist: Government, Grant-in-Aid, Self-Finance, University Department, DIET, MSU Faculty, Constituent. | | A.1.7 | Location (Urban/Rural) | Ye college city mein hai ya gaon mein? | location_type, district, college_name | G (KB) | location_type is Urban or Rural. Student may ask 'city college hai kya' which maps to Urban. | | A.1.8 | Website | Gujarat University ki website kya hai? | website, college_name OR university | G (KB) | Speak out URL only after being explicitly asked. When reading, say 'dot' out loud part by part. Never translate 'dot' to Gujarati or Hindi. Website may be blank for some colleges. | | A.1.9 | Medium of Instruction | Gujarat Commerce College mein English medium hai? | medium, college_name, program_name | G (KB) | Same college may offer different mediums for different programs. Must retrieve program-level medium, not just college-level. Values: English, Gujarati, Hindi, Sanskrit. | | A.1.10 | Shift/Timing | M N College mein evening batch hai kya? | shift, college_name, program_name | G (KB) | Shift is program-level, not college-level. Same college may have Morning for one program and Evening for another. Values: Morning, Noon, Evening. | | A.1.11 | Transport | College ki bus service hai? | transport, college_name | G (KB) | Yes/No field only. Agent cannot provide bus routes, timings, or fare details. | | A.1.12 | Canteen | Canteen hai campus mein? | canteen, college_name | G (KB) | Yes/No field only. | | A.1.13 | Health Centre | College mein medical facility hai? | health_centre, college_name | G (KB) | Student may say 'medical facility', 'doctor', or 'dispensary'. All map to health_centre. | | A.1.14 | Library | Library hai college mein? | library, college_name | G (KB) | Yes/No field. Agent cannot answer questions about book count, digital resources, or timings. | | A.1.15 | Computer Lab | Computer lab available hai kya? | computer_lab, college_name | G (KB) | Yes/No field. Relevant mostly for BCA, BSc IT, BSc CS students. | | A.1.16 | Campus WiFi | WiFi milta hai campus mein? | campus_wifi, college_name | G (KB) | Yes/No field. | | A.1.17 | Playground/Sports | College mein ground hai kya? Sports ke liye? | playground, college_name | G (KB) | Yes/No field. Agent cannot answer about specific sports facilities or teams. | | A.1.18 | Auditorium | Auditorium hai college mein? | auditorium, college_name | G (KB) | Yes/No field. | | A.1.19 | Gymnasium | Gym hai campus mein? | gymnasium, college_name | G (KB) | Yes/No field. | | A.1.20 | Placement Cell | Placement cell hai kya? Placement hoti hai? | placement_cell, college_name | G (KB) | Yes/No for cell existence. Agent CANNOT answer about placement records, companies visiting, salary packages, or placement percentage. Must redirect to college website. | | A.1.21 | Accessibility Features (PwBD-gated) | Main wheelchair user hoon. Ramp hai college mein? | ramps, lift, wheelchairs, washroom_disabled, scribes_exam, college_name | G (KB) | CRITICAL GATE: Only surface these fields if student identifies as PwBD OR explicitly asks about accessibility. If student has not identified as PwBD and asks about ramps, answer the specific question but do not dump all 5 accessibility fields. | | A.1.22 | Semesters/Duration | BCom kitne saal ka hai M N College mein? | semesters, college_name, program_name | G (KB) | Semesters value needs conversion to years for natural speech (6 semesters = 3 years). Integrated programs will have higher semester counts (10 semesters = 5 years for BA LLB). | | A.1.23 | Entrance Requirement | Koi entrance exam dena padega law college ke liye? | entrance_required, college_name, program_name | G (KB) | If entrance_required is Yes, agent must flag it clearly and say to check with the university. Must distinguish GCAS programs (no JEE/GUJCET/NEET) from entrance exams some universities require for specific programs (like law aptitude tests). | | A.1.24 | Minor Subjects | BCom mein minor subjects kya le sakte hain? | minor_subjects, college_name, program_name | G (KB) | minor_subjects may be blank or contain a comma-separated list. NEP-based programs are more likely to have this. Agent should speak options inline, not as a list. | | A.1.25 | Education Mode (Co-ed/Girls-Only) | Ye college sirf ladkiyon ke liye hai? | education_mode, college_name, program_name | G (KB) | Values: Co-Education, Girls-Only, Boys-Only. System prompt says never recommend a Girls-Only program to a male student. For Girls-Only, flag as women-only institution. | | A.1.26 | Establishment Year | Ye college kab start hua tha? | establishment_year, college_name | G (KB) | Numeric field. Speak in full words per natural speech rules. | | A.1.27 | Campus Area | College ka campus kitna boda hai? | campus_area_sqft, builtup_area_sqft, college_name | G (KB) | Values in square feet. May be blank. Convert to natural speech. Students may not understand sqft; agent can provide but should not over-explain. | | A.1.28 | Toilet Facilities | Girls ke liye separate washroom hai? | toilets_girls, toilets_boys, college_name | G (KB) | Numeric count fields. toilets_disabled_girls and toilets_disabled_boys only if PwBD gating applies. | | A.1.29 | Multi-Attribute Query (Single College) | M N College ke baare mein sab batao, fees, hostel, medium sab | Multiple fields as requested, college_name, program_name | G (KB) | If student says 'sab batao' (tell me everything), share the most relevant set: fee, hostel, medium, shift, NAAC, college type, semesters. Do NOT dump all columns. Do NOT mention accessibility unless PwBD. | --- ### A.2 University-Level Queries Student asks about a university as an entity, not a specific college. These require aggregation across multiple KB rows (all colleges under that university) or can be answered from prompt-native university metadata. | ID | Query Type | Example Student Speech | KB Fields Required | Flow | Edge Cases / Gotchas | |---|---|---|---|---|---| | A.2.1 | District Coverage | Saurashtra University kin kin districts ko cover karti hai? | university, district (aggregated across rows) | G (KB) | Agent can answer from prompt-native knowledge. But KB can confirm with actual college data. | | A.2.2 | Programs Offered Under University | Gujarat University mein konse courses milte hain? | program_name, major_subject (distinct, filtered by university) | G (KB) | 267 unique programs across all universities. Student may mean broad streams (Arts, Commerce, Science) or specific programs. GU has the widest range. GTU on GCAS only for BBA, BCA, B.Design, B.Voc, Integrated MBA/MCA. | | A.2.3 | Total Colleges Under University | HNGU ke neeche kitne colleges hain? | college_name (count distinct, filtered by university) | G (KB) | HNGU has the largest college count. Agent should give approximate count from KB data. Students may ask this to gauge the size/reach of a university. | | A.2.4 | University Specialization | SSSUV kya padhata hai? Kya hai ye university? | university, program_name (filtered by university) | G (KB) or Prompt-native | Specialized universities: SSSUV (Sanskrit only), CRU (child development), IITE (teacher education), BAOU (distance learning), GTU (BBA/BCA/B.Design/B.Voc/Integrated only on GCAS). Agent can answer from prompt Section 5.3. | | A.2.5 | University NAAC Grade | MSU ka NAAC grade kya hai? | naac_grade (from KB, university level) | G (KB) | University-level NAAC is different from college-level NAAC. MSU is A+ overall. KB has college-level NAAC grades. Student asking about university NAAC may need aggregation or prompt-native answer. | | A.2.6 | Government Colleges Under University | Gujarat University ke andar government colleges kitne hain? | college_name, college_type (filtered by university AND college_type='Government') | G (KB) | Students often equate 'government college' with affordable/reputed. Must filter by college_type. Count or list depending on volume. | | A.2.7 | University for a Specific District | Mehsana kaunsi university ke andar aata hai? | university, district | G (KB) or Prompt-native | Can be answered from prompt Section 5.1 mapping. If student names a district not in the prompt mapping, KB search is needed. | --- ### A.3 Program-Level Queries Student asks about a program or course across colleges, universities, or districts. These require filtering the KB by program_name (with fuzzy matching on variants) and optionally by district or university. | ID | Query Type | Example Student Speech | KB Fields Required | Flow | Edge Cases / Gotchas | |---|---|---|---|---|---| | A.3.1 | Colleges Offering a Specific Program | BCA kahan kahan milta hai Gujarat mein? | college_name, district, university (filtered by program_name) | G (KB) | BCA available across many colleges. Agent should ask for city/district preference to narrow down. If list is too long, group by district. Do not dump 200+ college names. | | A.3.2 | Program Availability in a District | Rajkot mein law college hai kya? | college_name, program_name (filtered by district AND program_name LIKE 'LLB' or 'BA LLB') | G (KB) | Student says 'law college' but KB has program_name entries like 'BA LLB integrated', 'LLB 3 year'. Must fuzzy match 'law' to relevant program names. Distinguish GCAS law (state university LLB) from GNLU (CLAT). | | A.3.3 | Subjects/Majors Available in a Program | BA mein konse subjects le sakte hain? | major_subject, minor_subjects (filtered by program_name LIKE 'BA') | G (KB) | BA has many major_subject options (History, Economics, Psychology, etc.). Must scope to a specific college or university. If no college specified, ask which college or university they are interested in. | | A.3.4 | Program Medium Options | BBA English medium mein kahan milega? | college_name, district, medium (filtered by program_name AND medium='English') | G (KB) | Many programs have only Gujarati medium. If no English medium exists for the program, say so clearly. Add city filter if student has a city preference. | | A.3.5 | Program Fee Range | BCA ki fees kitni hoti hai generally? | fee_general (min, max, typical range filtered by program_name) | G (KB) | Fee varies widely by college type: Government (low) vs Self-Finance (high). Agent should give range with context: 'Government colleges charge around X, self-finance can go up to Y.' | | A.3.6 | Integrated Program Clarification | Integrated MBA matlab kya? Direct 12th ke baad kar sakte hain? | program_name, semesters, college_name (filtered by program_name LIKE 'Integrated') | G (KB) + Prompt-native | Integrated programs (MBA, MCA, B.Ed M.Ed, B.Sc M.Sc) are UG-entry, in scope. Standalone PG (MA, MCom, MSc) is out of scope. Agent must clarify this distinction. | | A.3.7 | Program Duration | BA LLB kitne saal ka course hai? | semesters, program_name | G (KB) | Convert semesters to years. BA LLB integrated = 10 semesters = 5 years. Regular LLB = 6 semesters = 3 years (but requires graduation first). | | A.3.8 | Entrance Exam for a Program | B.Ed ke liye entrance exam hota hai? | entrance_required, program_name, college_name | G (KB) | Some B.Ed programs may require entrance. Must retrieve at program-college level. If entrance_required is Yes, direct to university for details. | | A.3.9 | Girls-Only Programs | Sirf ladkiyon ke liye koi special college ya program hai? | education_mode, college_name, program_name (filtered by education_mode='Girls-Only') | G (KB) | Some programs are Girls-Only. Agent must not recommend these to male students. Share these only when asked or when student is identified as female. | | A.3.10 | Honours/NEP Programs | BCom Honours milta hai kya? NEP wala? | program_name (filtered for 'Honours' or NEP variants), college_name, university | G (KB) | NEP introduced Honours variants. Not all colleges offer them. KB has entries like 'BACHELOR OF COMMERCE (HONORS)'. Student may say 'honours' or 'NEP wala BCom'. | --- ### A.4 District-Level Queries Student asks about what is available in their city or district. These require filtering by district field with fuzzy matching on city-to-district mapping. | ID | Query Type | Example Student Speech | KB Fields Required | Flow | Edge Cases / Gotchas | |---|---|---|---|---|---| | A.4.1 | Colleges in a District (General) | Mehsana mein koi accha college hai? | college_name, college_type, naac_grade, program_name (filtered by district) | G (KB) | 'Accha' (good) is subjective. Agent should present government and grant-in-aid colleges with NAAC grades as quality indicators. Do not rank or editorialize on 'best'. If too many results, ask for stream preference to narrow down. | | A.4.2 | Programs Available in a District | Kutch mein konse courses available hain? | program_name (distinct, filtered by district) | G (KB) | Kutch has only KSKVKU colleges. Limited program variety compared to Ahmedabad or Surat. If very few results, mention that nearby districts may have more options. | | A.4.3 | Government Colleges in a District | Surat mein government college hai kya? | college_name, program_name, college_type (filtered by district AND college_type='Government') | G (KB) | Students often want government colleges for lower fees. If no government colleges exist in the district for their stream, suggest Grant-in-Aid as next best. | | A.4.4 | Colleges with Hostel in a District | Rajkot mein hostel wala college chahiye | college_name, boys_hostel, girls_hostel, program_name (filtered by district AND hostel=Yes) | G (KB) | Must filter correct hostel field based on student gender. If gender unknown, ask or show both. | | A.4.5 | English Medium Colleges in a District | Vadodara mein English medium BCom kahan milega? | college_name, medium, program_name (filtered by district AND medium='English' AND program_name) | G (KB) | Combines district + medium + program filter. If no results, suggest broadening: either different district or accepting Gujarati medium. | | A.4.6 | Cheapest College in a District | Ahmedabad mein sabse sasti fees kahan hai commerce ke liye? | college_name, fee_general, college_type (filtered by district AND program, sorted by fee_general ASC) | G (KB) | Government colleges will typically be cheapest. Agent should present lowest-fee options. If student is female, check fee_girls too. | --- ### A.5 Cutoff Queries Student asks about cutoff data at a specific college for a specific program. These are factual KB lookups unless the student also shares their marks, in which case the agent does comparison math (Flow E hybrid). The correct cutoff column depends on category (6 options) and instate status (2 tracks) = 12 possible columns. | ID | Query Type | Example Student Speech | KB Fields Required | Flow | Edge Cases / Gotchas | |---|---|---|---|---|---| | A.5.1 | Cutoff at Specific College for Program | Gujarat Commerce College mein BCom ka cutoff kya hai? | cutoff_gen_instate (default), college_name, program_name | G (KB) or E (if marks shared) | Default to general instate cutoff unless student has specified category or outstate status. Always add that cutoffs are indicative and change every year. | | A.5.2 | Cutoff by Category | SC category ke liye MSU Commerce ka cutoff kya hai? | cutoff_sc_instate OR cutoff_sc_outstate, college_name, program_name | G (KB) or E | Must pick correct cutoff column from the 12 options based on category AND instate status. If instate unknown, default to instate. Do not answer reservation rules in detail. | | A.5.3 | Cutoff Comparison Across Colleges | R C College aur Gujarat Commerce College, dono ka cutoff batao BCom ke liye | cutoff_gen_instate (for both colleges), college_name, program_name | B (Compare) using KB | Must retrieve cutoff for exact same program at both colleges. If program name differs slightly between colleges, handle fuzzy matching. Must use same category/instate track for fair comparison. | | A.5.4 | Outstate Cutoff | Main Rajasthan se hoon. Gujarat University mein BCom ka cutoff kya hoga mere liye? | cutoff_gen_outstate, college_name, program_name | G (KB) or E | Student from outside Gujarat triggers outstate track. Agent should set instate=False and use outstate cutoff columns. Outstate cutoffs are typically higher. | | A.5.5 | Lowest Cutoff Colleges for a Program/Stream | Sabse kam cutoff kahan hai BCom ke liye? | college_name, cutoff_gen_instate, district (sorted by cutoff ASC, filtered by program) | G (KB) | This is a factual KB query, not a recommendation. Student wants to know which colleges are easiest to get into. If no city preference, statewide. Self-finance colleges will dominate the low end. Consider guiding to function tool for personalized results. | | A.5.6 | PH Category Cutoff | Main handicapped hoon, mere liye cutoff alag hai kya? | cutoff_ph_instate OR cutoff_ph_outstate, college_name, program_name | G (KB) or E | PH cutoffs are generally lowest. Student identifying as divyang (PwBD) triggers isPwBD=Yes. Agent should also unlock accessibility data per the PwBD gating rule. | --- ### A.6 Comparative Queries Student names two or more colleges and asks to compare them on one or more dimensions. These require multiple simultaneous KB lookups and structured presentation. | ID | Query Type | Example Student Speech | KB Fields Required | Flow | Edge Cases / Gotchas | |---|---|---|---|---|---| | A.6.1 | Fee Comparison (Two Colleges) | R C College aur Gujarat Commerce College, dono ki fees compare karo | fee_general, fee_girls, college_name, program_name (for both) | B (Compare) using KB | Must compare same program. If colleges have different programs, clarify which program at each. If student is female, include fee_girls. | | A.6.2 | Facility Comparison | In dono mein se kisme hostel hai aur kisme nahi? | boys_hostel, girls_hostel, college_name (for both) | B (Compare) using KB | Student may ask about any facility. Must retrieve the specific facility fields asked about from both colleges. | | A.6.3 | Overall Comparison (Open-ended) | M N College aur Gujarat Commerce College mein se better konsa hai? | naac_grade, college_type, fee_general, affiliation_type, boys_hostel, girls_hostel, college_name | B (Compare) using KB | Agent must not say one is 'better'. Present objective dimensions: NAAC grade, college type, fees, affiliation. Let student decide. Per Flow B Step 3: if no priority dimension stated, ask what matters most to them. | | A.6.4 | Cross-Dimension Comparison | R C College ki fees kya hai, aur Gujarat Commerce mein hostel hai kya? | fee_general (for college A), boys_hostel/girls_hostel (for college B), college_name | B (Compare) using KB | Different fields from different colleges. KB search must handle this as two separate retrieval queries combined in one comparison. | | A.6.5 | Three-way Comparison | R C College, Gujarat Commerce, aur H B Kotak, teeno mein fees compare karo | fee_general, college_name, program_name (for all three) | B (Compare) using KB | Three simultaneous KB lookups. Must keep same program across all three. Agent should present concisely in connected sentences, not a table. | | A.6.6 | Government vs Self-Finance Comparison | Government college aur private college mein kya fark hai? | college_type, fee_general (representative examples) | G (KB) or Prompt-native | Generic question, not about specific colleges. Agent can answer from prompt-native knowledge about fee ranges by type or give representative examples from KB. | | A.6.7 | Cutoff-based Comparison | Dono mein se kahan meri chances zyada hain? | cutoff_[category]_[instate], college_name (for both), student marks | B (Compare) + E (Eligibility math) | Requires student marks. If marks available, compute delta for both and give grade. If marks not available, present raw cutoffs. This is a hybrid: KB retrieval + agent-side comparison math. | | A.6.8 | Medium/Shift Comparison | Dono mein se kahan English medium milega aur kahan evening shift? | medium, shift, college_name, program_name (for both) | B (Compare) using KB | Program-level fields. Must match the same program or clarify if programs differ. | --- ## Section B: Multi-Turn Conversation Chains Real student calls are not single-turn. Students chain questions across tools and flows. This section catalogs the most common and most tricky transition patterns. | ID | Pattern | Turn-by-Turn Flow | Tools Used | Routing Logic | Edge Cases / Gotchas | |---|---|---|---|---|---| | B.1 | Recommendation, then probe recommended college | Turn 1: Student shares marks/stream/city. Agent invokes function tool, returns 3 colleges. Turn 2: Student asks 'Pehle wale college ke baare mein aur batao'. Turn 3: Agent retrieves details from KB for that specific college. | Function Tool (Turn 1), then KB (Turn 2+) | Bucket 1 → Bucket 2. Agent must resolve 'pehle wale' (the first one) to the actual college name from the previous function tool response. | Student uses pronouns or ordinal references ('first one', 'second wala', 'last one'). Agent must maintain context of the 3 recommendations. | | B.2 | KB detail query, then eligibility check | Turn 1: Student asks 'Gujarat Commerce College ki fees kya hai?' Agent retrieves from KB. Turn 2: Student says 'Mere 72% hain, mil jayega mujhe yahan?' Turn 3: Agent retrieves cutoff from KB (or uses already retrieved data), compares with 72%, gives grade. | KB (Turn 1), then KB + Agent Math (Turn 2) | Bucket 2 to Bucket 2 (eligibility hybrid). No bucket change, but the operation changes from simple retrieval to hybrid retrieval + comparison. | Agent should not re-retrieve college data if already fetched in Turn 1. Cutoff may already be in the retrieved context. | | B.3 | Eligibility check (hard result), then request alternatives | Turn 1: Student asks 'MSU Faculty of Commerce mein mil sakta hai 72% pe?' Agent says 'hard'. Turn 2: Student says 'Toh koi aur option batao Vadodara mein commerce ke liye.' Turn 3: Agent invokes function tool with marks=72, stream=commerce, city=Vadodara. | KB + Agent Math (Turn 1), then Function Tool (Turn 2) | Bucket 2 → Bucket 1. Student explicitly asked for alternatives after a hard eligibility result. Agent should carry forward all known details (marks, stream, city) without re-asking. | Agent must not re-ask marks or stream since they were already shared. Per mandates, carry forward all known details. | | B.4 | Comparison, then ask for a third alternative | Turn 1: Student compares College A and College B via KB. Turn 2: Student says 'Dono mein meri chances kam hain. Koi aur option hai?' Turn 3: Agent invokes function tool with student details. | KB (Turn 1), then Function Tool (Turn 2) | Bucket 2 → Bucket 1. Student's comparison results are 'hard', prompting a shift to personalized recommendation. | Agent needs student marks to invoke function tool. If marks were shared during comparison (Turn 1), use them. If not, ask once. | | B.5 | Facility query, then follow-up on different facility at same college | Turn 1: Student asks 'M N College mein hostel hai?' Agent answers from KB. Turn 2: Student asks 'Aur canteen? WiFi?' Agent answers from KB for same college. | KB (Turn 1), KB (Turn 2) | Bucket 2 to Bucket 2. Same college, different fields. No tool switch needed. | Agent should not re-retrieve the entire college record. The second query should build on context. If the first KB retrieval already fetched the full record, additional fields can be answered from cached context. | | B.6 | Program query at one college, then same program at another | Turn 1: Student asks 'BCA milta hai Gujarat University ke colleges mein?' Agent answers from KB. Turn 2: Student asks 'Aur GTU ke colleges mein?' Agent answers for GTU. | KB (Turn 1), KB (Turn 2) | Bucket 2 to Bucket 2. Student is cross-referencing program availability across universities. | GTU on GCAS only for BBA, BCA, B.Design, B.Voc, Integrated MBA/MCA. If student asks about engineering BCA colleges, that is ACPC, not GCAS. | | B.7 | Recommendation, then compare two recommended options, then probe winner | Turn 1: Function tool returns 3 colleges. Turn 2: Student says 'Pehle do compare karo'. Turn 3: Agent retrieves details for both from KB and compares. Turn 4: Student asks 'Toh first wala better lag raha hai. Uska hostel hai kya?' Turn 5: Agent retrieves hostel info from KB. | Function Tool (Turn 1), KB (Turn 2-3), KB (Turn 4-5) | Bucket 1 → Bucket 2 (compare) → Bucket 2 (probe). Three-step chain. | Context chain: agent must track which colleges are 'first' and 'second' from the original recommendation, then which is the 'winner' from comparison. | | B.8 | Boundary redirect, then pivot to in-scope query | Turn 1: Student asks about engineering. Agent redirects to ACPC. Turn 2: Student says 'Okay, toh BCA ke baare mein batao, wo GCAS se hota hai na?' Turn 3: Agent confirms BCA is in scope and proceeds with KB or function tool. | Prompt-native (Turn 1), then KB or Function Tool (Turn 2+) | Bucket 3 → Bucket 2 or Bucket 1. Student pivots from out-of-scope to in-scope after redirect. | Agent must handle the transition cleanly. Do not carry engineering context into BCA recommendations. | | B.9 | Process query, then recommendation request | Turn 1: Student asks 'GCAS registration kaise hota hai?' Agent explains from prompt. Turn 2: Student says 'Theek hai. Mere 65% hain commerce mein, koi college suggest karo.' Turn 3: Agent collects remaining details and invokes function tool. | Prompt-native (Turn 1), then Function Tool (Turn 2+) | Bucket 3 → Bucket 1. Common pattern: student first understands the process, then seeks college options. | Agent must switch cleanly from process explanation flow. Marks and stream already shared in Turn 2 should be used without re-asking. | | B.10 | Eligibility check, then comparison with alternative | Turn 1: Student asks 'M N College mein BCom mil sakta hai 68% pe?' Agent says 'possible'. Turn 2: Student asks 'Aur R C College mein? Dono mein se kahan zyada chance hai?' Turn 3: Agent retrieves R C College cutoff, compares both with 68%. | KB + Agent Math (Turn 1), KB + Agent Math (Turn 2) | Bucket 2 to Bucket 2. Both eligibility checks. Agent adds comparison dimension. | Agent must use same category and instate track for both. If first check used general instate, second must too unless student specifies otherwise. | | B.11 | Topic jumping mid-call | Turn 1: Student asks about fees at College A (KB). Turn 2: Student suddenly asks 'GCAS portal pe kaise register karte hain?' (Process). Turn 3: Student says 'Aur haan, College B mein hostel hai?' (Back to KB). Turn 4: 'Mere liye kya options hain 75% pe?' (Function tool). | KB, Prompt-native, KB, Function Tool | Bucket 2, Bucket 3, Bucket 2, Bucket 1. All four buckets in one call. | Agent must handle each pivot without losing context. When student returns to KB after process query, agent should not re-ask for college name if already established. | | B.12 | Progressive detail deepening on one college | Turn 1: 'Gujarat Commerce College ke baare mein batao' (general). Turn 2: 'Fees kya hai?' Turn 3: 'Hostel hai?' Turn 4: 'English medium milega?' Turn 5: 'Minor subjects kya hain BCom mein?' Turn 6: 'Cutoff kya hai general category?' | All KB, progressively deeper | Bucket 2 throughout. Six sequential KB queries about the same college. | Agent should NOT re-retrieve the full college record each time. After first retrieval, subsequent answers should build from already-fetched context where possible. Each answer should be concise. | | B.13 | Re-recommendation with changed parameters | Turn 1: Function tool with commerce, GEN. Returns 3 colleges. Turn 2: Student says 'Main actually SC hoon' (reveals SC category). Turn 3: Agent re-invokes function tool with category=SC, same other parameters. Turn 4: New results with lower cutoffs. | Function Tool (Turn 1), Function Tool (Turn 3) | Bucket 1 to Bucket 1. Same tool, changed parameters. | Agent must not re-ask for marks, stream, or city. Only the changed parameter (category) is updated. Brief confirmation before re-invoking. | | B.14 | Recommendation, then ask about a non-recommended college | Turn 1: Function tool returns colleges A, B, C. Turn 2: Student says 'Mujhe actually D College ke baare mein pata karna hai, wo nahi aaya list mein.' (Asks about a college NOT in the recommendation list). | Function Tool (Turn 1), KB (Turn 2) | Bucket 1 → Bucket 2. Student ignores recommendations and asks about a different college. | Agent must handle this gracefully. Retrieve D College from KB. If student asks about eligibility at D College, use hybrid (KB cutoff + math). | | B.15 | Parent calling on behalf of student | Turn 1: Parent says 'Mere bete ke 72% aaye hain commerce mein, Ahmedabad mein college chahiye.' Turn 2: Agent proceeds with recommendation flow. Turn 3: Parent says 'Aur hostel bhi chahiye, bahar se aa raha hai ladka.' (Also needs hostel, student is from outside). | Function Tool (Turn 1-2), KB filter on hostel (Turn 3) | Bucket 1, then Bucket 2 for hostel filter. Plus: instate may need to change to False if 'bahar se' means outside Gujarat. | Parent language is less precise. 'Bahar se' could mean outside Ahmedabad (instate=True) or outside Gujarat (instate=False). Agent must clarify. | --- ## Section C: Fuzzy and Partial Name Patterns Students calling a helpline do not use official full names. This section catalogs how students actually refer to colleges, universities, programs, and districts in natural spoken language. KB search must handle all of these. | ID | Pattern Category | Example Inputs | Resolution Strategy | Risk / Ambiguity | |---|---|---|---|---| | C.1 | Short Form of College Name | 'Gujarat Commerce' for Gujarat Commerce College Ahmedabad; 'M N College' for Shri M.N. Kampani Arts and Shri A.K. Shah Commerce College Junagadh; 'R C College' for C.R. Commerce and C.R. Arts College Ahmedabad; 'H B Kotak' for H.B. Kotak Institute of Science Rajkot; 'D K V' for D.K.V. College Jamnagar | KB alias columns (CollegeNameSearchKeyword1-4) should contain these short forms. RAG search must match partial strings against full college names. | Multiple colleges may match a short form. 'Science College' alone matches dozens. | | C.2 | Abbreviation/Acronym | 'GCC' for Gujarat Commerce College; 'GU' for Gujarat University; 'MSU' for Maharaja Sayajirao University; 'HNGU' for Hemchandracharya North Gujarat University; 'VNSGU' for Veer Narmad South Gujarat University; 'SPU' for Sardar Patel University; 'BKNMU' for Bhakta Kavi Narsinh Mehta University | University abbreviations are in university_aliases. College abbreviations should be in CollegeNameSearchKeyword columns. Some may be missing and need enrichment. | Acronyms like 'GCC' could be ambiguous if multiple colleges share initials. | | C.3 | City-Qualified Partial Name | 'Government Commerce College Ahmedabad'; 'Science college Rajkot'; 'Law college Ahmedabad mein'; 'Wo wala government college Mehsana mein'; 'Arts college Surat' | Must combine partial program/type match with district filter. 'Science college Rajkot' = filter by district=Rajkot AND (college_name LIKE 'Science' OR program_name LIKE 'Science'). | Multiple matches likely. Agent must present options and ask student to confirm which one they mean. | | C.4 | Colloquial/Local Names | 'Commerce College' (locally famous Gujarat Commerce College Ahmedabad); 'Law Garden wali college' (location-based reference); 'Anand Commerce' for a commerce college in Anand; 'Kampani College' for M.N. Kampani College Junagadh; 'Kotak Science' for H.B. Kotak Institute of Science; 'Government Science Jasdan' for a government science college in Jasdan | college_name_aliases should contain colloquial forms. For location-based references, agent may need to ask for clarification since these are not in the KB. | Highly region-specific. A student from Junagadh knows 'Kampani College' but the full name is very different. | | C.5 | Hindi/Gujarati Name References | 'Vanijya Mahavidyalaya' (Hindi for Commerce College); 'Vigyan Mahavidyalaya' (Hindi for Science College); 'Kala Mahavidyalaya' (Hindi for Arts College); 'Kanoon Mahavidyalaya' (Hindi for Law College); 'Shikshan Mahavidyalaya' (Hindi for Education College) | college_name_hindi and program_name_hindi columns in KB. RAG search must match Hindi terms against these columns. | Hindi names may not be exact matches. Students mix Hindi and English freely: 'Vanijya college Ahmedabad mein'. | | C.6 | ASR (Speech-to-Text) Distortions | 'Kampaani' instead of 'Kampani'; 'Gujrat' instead of 'Gujarat'; 'Ahmdabad' instead of 'Ahmedabad'; 'Mahsagar' instead of 'Mahisagar'; 'Baroda' instead of 'Vadodara'; 'Rajcot' instead of 'Rajkot'; 'Annavadi' instead of 'Anavadi'; 'Paalitana' instead of 'Palitana' | Alias columns should contain common ASR error variants. Additionally, the RAG search should use phonetic matching or Levenshtein distance for fuzzy matching. | ASR quality varies significantly with background noise, accent, and phone quality. Gujarati proper nouns are especially prone to ASR errors. | | C.7 | Partial Match Ambiguity (Multiple Colleges Match) | 'Government College' (matches 953 rows); 'Commerce College' (matches hundreds); 'Arts College Ahmedabad' (multiple arts colleges in Ahmedabad); 'Science College Surat' (multiple science colleges in Surat) | Agent must disambiguate by asking for more specifics: full name, university affiliation, or exact location. Present top 2-3 matches and ask student to confirm. | If agent picks the wrong college, all subsequent data (fees, cutoffs) will be wrong. Disambiguation is critical. | | C.8 | University Name Used Instead of College Name | 'MSU mein BCom ki fees kya hai?' (MSU has multiple faculties); 'Gujarat University mein hostel hai?' (GU affiliates 500+ colleges); 'SPU ka cutoff kya hai?' (SPU has university departments AND affiliated colleges) | Agent must clarify: are they asking about a university department/faculty or a specific affiliated college? For MSU, likely means MSU Faculty of Commerce. For GU, must ask which college. | University-level queries return aggregated data. Student expects specific college-level data. Must disambiguate. | | C.9 | Program Name Variants | 'Commerce' instead of 'Bachelor of Commerce'; 'Science' instead of 'Bachelor of Science'; 'BA' instead of 'Bachelor of Arts'; 'BCA' (abbreviation); 'Computer Science' for BSc CS, BCA, BSc IT; 'Law' for LLB or BA LLB; 'B.Ed' / 'MBA' (could mean standalone or integrated) | program_name_aliases should contain these variants. Agent must also consider stream_preference mapping: 'commerce' maps to BCom, BCom Honours, BBA, etc. 'Law' maps to LLB, BA LLB, BBA LLB, BCom LLB. | 'Computer Science' maps to BSc CS, BCA, BSc IT. 'Law' maps to multiple programs. 'MBA' is ambiguous: standalone (out of scope) vs integrated (in scope). | | C.10 | District Name Variants | 'Baroda' for Vadodara; 'Bhavnagar' for Bhavnagar; 'Kachchh' or 'Kutch' or 'Katch'; 'Dwarka' for Devbhumi Dwarka; 'Somnath' for Gir Somnath; 'Tharad' or 'Yav Tharad' (sub-district reference); 'Nadiad' (city in Kheda district) | district_aliases should contain these variants. 'Baroda' is extremely common for Vadodara. City-to-district mapping needed: Nadiad is in Kheda, Visnagar is in Mehsana, Vallabh Vidyanagar is in Anand. | Students name cities, not districts. The KB uses district names. Agent or search must map city names to the correct district. | --- ## Section D: Edge Cases and Failure Modes Queries that could break or confuse the KB search. These represent the highest-risk scenarios for incorrect agent responses. | ID | Failure Mode | Example Trigger | Expected Agent Behavior | Risk if Unhandled | |---|---|---|---|---| | D.1 | College Exists but Program Does Not | M N College mein BCA milta hai kya? | KB search returns M N College but no BCA program rows. Agent should say the college does not offer BCA and suggest either (a) other colleges in the same district offering BCA, or (b) programs that M N College does offer. | If RAG retrieves college-level data and does not check program-level, agent may hallucinate that BCA exists. Must validate program_name in retrieved rows. | | D.2 | Similar Names in Different Districts | 'Government Commerce College' (exists in Ahmedabad, Rajkot, Surat, and other districts) | Agent must disambiguate by asking which district or city. Present matches with district names. Do not assume. | Without disambiguation, agent picks a random match. Fees, cutoffs, and facilities will be wrong for the intended college. | | D.3 | Data NA or Blank Fields | Student asks about NAAC grade of a college that has no NAAC accreditation (blank field) | Agent should say 'NAAC grade information is not available for this college in our data.' Do not say 'The college has no NAAC grade' (they might have one, just not in data). | Blank vs explicitly 'No'. Agent must use careful language: 'not available in our data' vs 'does not have'. | | D.4 | Student Confuses College and University | 'MSU mein admission lena hai' (MSU is a university with multiple faculties, not a single college) | Agent should clarify: 'MSU has several faculties. Which program are you interested in? For example, Faculty of Commerce, Faculty of Arts, Faculty of Science?' Then retrieve specific faculty data. | Treating MSU as a single entity gives meaningless fee/cutoff data since each faculty differs. | | D.5 | College Not in GCAS | 'DDU mein BCom ka cutoff kya hai?' (Dharmsinh Desai University is a private/deemed university, not on GCAS) | Agent should say this college/university is not on the GCAS portal and has its own admission process. Suggest checking the institution's website directly. | If KB search finds a partial match to a GCAS college with similar initials, agent may provide wrong data. | | D.6 | Data Not in KB (Placement, Hostel Capacity, Faculty) | 'M N College ki placement record kaisi hai? Kitne percent students ko job milti hai?' | Agent says 'I do not have placement record data. I can tell you whether the college has a placement cell. For detailed placement information, check the college website directly.' | Agent must not fabricate statistics. Speak only from available data. | | D.7 | Multiple Programs Match Student Query | 'Commerce ka course batao Gujarat University mein' (BCom, BCom Honours, BBA, BBA LLB, BCom LLB all relate to 'commerce') | Agent should clarify which specific program: 'Are you looking for BCom, BCom Honours, BBA, or something else? Gujarat University offers several commerce-related programs.' | If agent defaults to BCom only, student may miss BBA or integrated law options that could be better fits. | | D.8 | Ambiguous District Reference | 'Vidyanagar ka college' (Vallabh Vidyanagar is in Anand district. But student may mean a different Vidyanagar.) | Agent should confirm: 'Do you mean Vallabh Vidyanagar in Anand district, where Sardar Patel University is located?' | Sub-locality names, neighbourhood names, and colloquial area names do not map directly to district fields in KB. | | D.9 | Gender Mismatch with Girls-Only Program | Male student asks about a women's college or Girls-Only program | Agent should inform that this is a women-only institution/program and the student is not eligible. Suggest co-education alternatives. | If agent does not check education_mode, it may recommend a Girls-Only program to a male student. | | D.10 | Outstate Student Asking About Cutoffs Without Specifying Origin | Student asks about cutoff but has not specified whether they are from Gujarat or outside | Agent defaults to instate (Gujarat) per system prompt. If student later reveals they are from outside, agent must re-check with outstate cutoffs. | Instate and outstate cutoffs can differ significantly. Wrong track gives wrong eligibility assessment. | | D.11 | BAOU Query (No Cutoffs) | 'BAOU mein BCom ke liye cutoff kya hai?' | Agent should say BAOU is open admission with no cutoffs. Any student who meets basic eligibility can register. No cutoff comparison needed. | If RAG searches for BAOU cutoffs, it will find DataNA or zeroes. Agent must know BAOU is a special case. | | D.12 | Engineering College Name Mentioned | 'L D College mein kya courses hain?' | If 'L D College' refers to L.D. College of Engineering, agent must redirect to ACPC per hard boundary rules. But if there is an L.D. affiliated arts/commerce college on GCAS, that should be retrieved. | Agent must distinguish engineering colleges (ACPC) from GCAS colleges. Some institution names are ambiguous. | | D.13 | Student Asks Same Question Differently | Turn 1: 'Gujarat Commerce College ka cutoff batao.' Turn 3: 'Wo commerce college Ahmedabad wali, uska cutoff kya tha?' (Same question, different phrasing.) | Agent should recognize this is the same question and give the same answer without re-fetching if already available. | If RAG does not recognize the rephrased query as the same, it may return different results or ask for clarification unnecessarily. | | D.14 | Fee Query Without Specifying Program | 'Gujarat University ki fees kitni hai?' | Agent should clarify which program, since fees vary widely across programs at GU. Ask: 'Which program are you interested in? BCom, BSc, BA, BBA?' | Returning a single fee for a university with 100+ programs at different fee points is misleading. | | D.15 | Student Mentions a Merged or Renamed College | Student uses an old or informal name for a college that has been renamed | If the old name is in CollegeNameSearchKeyword columns, the search should match. If not, agent should say the name was not found and ask for more details. | College names change over time. KB snapshot may use current names while students use older names. | | D.16 | Composite Query Spanning Multiple Buckets | 'Mere 72% hain commerce mein, Gujarat Commerce College mein mil jayega kya, aur agar nahi toh koi aur suggest karo' | This is a single utterance spanning Bucket 2 (eligibility at Gujarat Commerce College) AND Bucket 1 (recommendation if not eligible). Agent should first do eligibility check (KB + math), then if result is 'hard', invoke function tool for alternatives. | Agent must parse a single complex sentence into two sequential actions across two different tools. | --- ## Taxonomy Summary | Section | Category | Count | |---|---|---| | A.1 | College-Level Queries | 29 | | A.2 | University-Level Queries | 7 | | A.3 | Program-Level Queries | 10 | | A.4 | District-Level Queries | 6 | | A.5 | Cutoff Queries | 6 | | A.6 | Comparative Queries | 8 | | B | Multi-Turn Conversation Chains | 15 | | C | Fuzzy and Partial Name Patterns | 10 | | D | Edge Cases / Failure Modes | 16 | | **TOTAL** | | **107** | --- ## Quick Reference: KB Fields by Query Type | Query Type | Primary Table | Key Fields | |---|---|---| | Fees | CollegeIntakeMaster | `Programme Fees for Female Student`, `Programme Fees for Other than Female Student`, `AdmissionName`, `CollegeProgramTypeName` | | Hostel | CollegeInfrastructure | `BoysHostel`, `GirlsHostel`, `CapcityInBoysHostel`, `CapcityInGirlsHostel` | | NAAC / Accreditation | CollegeMaster | `IsNAAC`, `NAACGrade`, `NAACDate` | | Contact | CollegeMaster | `CollegePrincipalNameFooter`, `College Helpline Number`, `CollegePrincipalEmail`, `Website` | | Facilities | CollegeInfrastructure | `Library`, `ComputerLab`, `Auditorium`, `Playground`, `Gymnasium`, `Canteen`, `TransportationFacility`, `HealthCentre`, `CampusWifi` | | Accessibility (PwBD) | CollegeInfrastructure | `Ramps`, `Lift`, `Wheelchairs`, `WashroomforDisabled`, `Signages`, `ScribesForExam` | | Programs/Courses | CollegeIntakeMaster | `AdmissionName`, `MajorBasketName`, `MinorBasketName`, `ProgramShift`, `MediumName`, `EducationMode`, `Intake` | | Duration/Semesters | CollegeIntakeMaster | `AdmissionSubTypeByUni`, `Year` | | Cutoffs | CutOff_2025-26 | `General`, `SEBC`, `SC`, `ST`, `EWS`, `GeneralPH`, `MeritType`, `TotalSeat` | | College Type / Affiliation | CollegeMaster | `InstituteTypeForCollegeName`, `AffiliationTypeName`, `IsAutonomous` | | Location | CollegeMaster | `DistrictName`, `TalukaName`, `Place`, `CollegeLocationTypeName` | | Cells & Activities | CollegeMaster | `PlacementCell`, `NCC`, `NSS`, `Sports`, `SSIPCell`, `Antiraggingcell` |