str.partition
str.partition(...)Description
Documentation for str.partition.
Real-World Examples
Practical code examples showing how str.partition is used in real projects.
Example 1
From Enoch2090/MAGI (indexers.py)
rank=10
):
start = time.time()
query_embedding = self.model.encode([query], show_progress_bar=False)
similarity = self.model.similarity_func(query_embedding, self.pooled_embeddings[lang])
unsorted_index = np.argpartition(similarity, -rank)[-rank:]
# unsorted_index = np.argsort(similarity)
sorted_index = unsorted_index[np.flip(np.argsort(similarity[unsorted_index]))]
results = []
for index in sorted_index:
results.append(
{
'index': str(index),
**self.get_repo(index, lang),
'metric': 'similarity',
'value': float(similarity[index])
}
)
end = time.time()
runtime = float(end - start)
return results, runtime
class GitHubSearcher:
# Comparison searcher using GitHub's API to perform plain text search
def __init__(
max_repos: int = 100_000,
use_rest_api: bool = False # CHANGED: Default to GraphQL as per assignment
) -> dict:
"""
Crawl GitHub repositories and save them to the database.
Uses GraphQL API with partitioned queries to overcome 1K result limit.
Args:
queries: List of GitHub search queries (for GraphQL mode)
max_repos: Maximum number of repositories to crawl across all queries
use_rest_api: Use REST API (True) or GraphQL (False)
Returns:
Dictionary with crawl statistics
"""
if queries is None:
queries = self._get_optimized_queries_for_100k()
print("\n" + "="*60)
print(f"🚀 Starting GitHub Repository Crawler")
print("="*60)
print(f"📊 Target: {max_repos:,} repositories")
print(f"🔍 API: {'REST' if use_rest_api else 'GraphQL (as required)'}")
print(f"🔍 Query strategy: {len(queries)} partitioned queries")
print(f"🗄️ Database: Ready")