examples.basic_example

Simple GitHubSearchEngine example.

 1import asyncio
 2import os
 3
 4from github_search_engine.github_search_engine import GithubSearchEngine
 5
 6
 7def run(
 8  github_access_token: str,
 9  owner: str,
10  repository_name: str,
11  query: str,
12):
13  github_search_engine = GithubSearchEngine(
14    github_access_token, qdrant_location=":memory:"
15  )
16
17  asyncio.run(github_search_engine.index_repository(owner, repository_name))
18  results = github_search_engine.search(owner, repository_name, query)
19  summary = github_search_engine.summarise_results(
20    results, owner, repository_name, query
21  )
22  return summary
23
24
25if __name__ == "__main__":
26  github_pat = os.environ["GITHUB_PAT"]
27  result = run(
28    github_access_token=github_pat,
29    owner="PyGithub",
30    repository_name="PyGithub",
31    query="Can I use async?",
32  )
33  print(result)