jenkins-error-explainer / retrieve_docs.py
Arvind2006's picture
Upload retrieve_docs.py with huggingface_hub
cef0524 verified
# retrieve_docs.py
import json
import faiss
import numpy as np
from sentence_transformers import SentenceTransformer
INDEX_PATH = "data/docs/docs.index"
META_PATH = "data/docs/docs_meta.json"
TOP_K = 5
QUERY_TEMPLATES = {
"groovy_syntax_error": "Jenkins pipeline Groovy syntax error missing brace",
"missing_agent": "Jenkins pipeline agent none requires node context",
"no_node_available": "Jenkins no nodes with label scheduling executor",
"missing_plugin": "Jenkins No such DSL method pipeline step",
"missing_credentials": "Jenkins credentials not found pipeline",
"file_not_found": "Jenkins pipeline workspace file not found",
"git_authentication_error": "Jenkins git authentication failed checkout"
}
model = SentenceTransformer(
"paraphrase-MiniLM-L3-v2",
cache_folder="./model_cache"
)
def retrieve_docs(error_category: str):
index = faiss.read_index(INDEX_PATH)
with open(META_PATH, "r", encoding="utf-8") as f:
metadata = json.load(f)
query = QUERY_TEMPLATES.get(
error_category,
"Jenkins pipeline error"
)
query_embedding = model.encode([query])
distances, indices = index.search(query_embedding, TOP_K)
results = []
for idx in indices[0]:
results.append({
"text": None,
"meta": metadata[idx]
})
return results
if __name__ == "__main__":
results = retrieve_docs("Started by user Arvind Nandigam org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: WorkflowScript: 10: expecting '}', found '' @ line 10, column 1.1 error")
for r in results:
print(r)