Keywords obtained from a user and/or extracted from uploaded document(s) may be used to generate potential keywords. Documents may be identified based on the keywords and the potential keywords accepted by the user. A knowledge graph model representing the identified documents may be generated. The knowledge graph model may include document nodes representing the identified document and a search node representing the keywords. The relative position of the document nodes with respect to the search node may represent similarity between the corresponding documents and the keywords.