Ask about your visa, I-20, or arrival.
Answers come only from ISSO’s pages for students, and each one links to the page it came from.
Try one of these
From your question to a cited answer.
A retrieval-augmented pipeline over a saved copy of 36 ISSO pages. The model only sees the passages retrieval hands it, and must cite one of them.
-
POST /chatYour question
Trimmed and capped at 1,000 characters. Each visitor gets 5 questions a minute and 50 a day.
-
embed_query()Embed
The question becomes a 768-number vector with gemini-embedding-001, the same model that embedded the pages.
-
retrieve()Retrieve
Cosine similarity against the passages cut from those pages. The corpus holds 595, for students and scholars; this assistant searches the 393 for students. The closest 3 go forward.
-
answer()Generate
gemini-3.1-flash-lite answers using only those 3 passages, and says so when they don’t cover the question.
-
More infoCite
The answer ends with the heading and link of the passage it used, copied from the source, never invented.
Keeping it current
A monitor script compares the saved pages with the live site: the sitemap’s last-modified date first, then a hash of the page body, then its layout blocks and how much text the parser captured. Pages that leave the sitemap are archived and never retrieved again.
Stack
Python and FastAPI on Google Cloud Run, Gemini for embeddings and answers, brute-force cosine search in NumPy. This page is plain HTML, CSS and JavaScript.