This project aims to develop an interactive search environment (called QueryClinic) to better support a user in finding information in large information spaces. The goal is to make the search process a collaborative process in which QueryClinic software and a user would interact with each other and work together toward improving search results. This is in contrast with the current search process in which a search engine passively responds to a user's query with some search results. Specifically, QueryClinic would actively involve a user in the search process so that the user can give more input to the search process and also receive more guidance and assistance in reformulating queries. In this way, the system would be able to collect more informative feedback information and analyze the entire interaction session as a whole (rather than just a few words in the query) to understand more precisely the user's information need, which in turn helps the system better direct the search process and improve search accuracy.