Spaces:
Sleeping
Sleeping
Update repo_explorer.py
Browse files- repo_explorer.py +15 -1
repo_explorer.py
CHANGED
@@ -50,7 +50,7 @@ def create_repo_explorer_tab() -> Tuple[Dict[str, gr.components.Component], Dict
|
|
50 |
"https://huggingface.co/datasets/huggingface/brand-assets/resolve/main/hf-logo.png"
|
51 |
),
|
52 |
show_copy_button=True,
|
53 |
-
value=[
|
54 |
)
|
55 |
|
56 |
with gr.Row():
|
@@ -150,6 +150,16 @@ Answer the user's question based on your comprehensive knowledge of this reposit
|
|
150 |
|
151 |
return history
|
152 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
153 |
def setup_repo_explorer_events(components: Dict[str, gr.components.Component], states: Dict[str, gr.State]):
|
154 |
"""Setup event handlers for the repo explorer components."""
|
155 |
|
@@ -162,6 +172,10 @@ def setup_repo_explorer_events(components: Dict[str, gr.components.Component], s
|
|
162 |
fn=lambda repo_id: repo_id,
|
163 |
inputs=[components["repo_explorer_input"]],
|
164 |
outputs=[states["current_repo_id"]]
|
|
|
|
|
|
|
|
|
165 |
)
|
166 |
|
167 |
# Chat message submission events
|
|
|
50 |
"https://huggingface.co/datasets/huggingface/brand-assets/resolve/main/hf-logo.png"
|
51 |
),
|
52 |
show_copy_button=True,
|
53 |
+
value=[] # Start empty - welcome message will appear only after repo is loaded
|
54 |
)
|
55 |
|
56 |
with gr.Row():
|
|
|
150 |
|
151 |
return history
|
152 |
|
153 |
+
def initialize_repo_chatbot(repo_status: str, repo_id: str, repo_context_summary: str) -> List[Dict[str, str]]:
|
154 |
+
"""Initialize the repository chatbot with a welcome message after successful repo loading."""
|
155 |
+
# Only initialize if repository was loaded successfully
|
156 |
+
if repo_context_summary.strip() and "successfully" in repo_status.lower():
|
157 |
+
welcome_msg = f"👋 Welcome! I've successfully analyzed the **{repo_id}** repository.\n\n🧠 **I now have comprehensive knowledge of:**\n• All files and code structure\n• Key features and capabilities\n• Installation and usage instructions\n• Architecture and implementation details\n• Dependencies and requirements\n\n💬 **Ask me anything about this repository!** \nFor example:\n• \"What does this repository do?\"\n• \"How do I install and use it?\"\n• \"What are the main components?\"\n• \"Show me usage examples\"\n\nWhat would you like to know? 🤔"
|
158 |
+
return [{"role": "assistant", "content": welcome_msg}]
|
159 |
+
else:
|
160 |
+
# Keep chatbot empty if loading failed
|
161 |
+
return []
|
162 |
+
|
163 |
def setup_repo_explorer_events(components: Dict[str, gr.components.Component], states: Dict[str, gr.State]):
|
164 |
"""Setup event handlers for the repo explorer components."""
|
165 |
|
|
|
172 |
fn=lambda repo_id: repo_id,
|
173 |
inputs=[components["repo_explorer_input"]],
|
174 |
outputs=[states["current_repo_id"]]
|
175 |
+
).then(
|
176 |
+
fn=initialize_repo_chatbot,
|
177 |
+
inputs=[components["repo_status_display"], states["current_repo_id"], states["repo_context_summary"]],
|
178 |
+
outputs=[components["repo_chatbot"]]
|
179 |
)
|
180 |
|
181 |
# Chat message submission events
|