Spaces:
Sleeping
Sleeping
| # self_update_test.py | |
| import os | |
| import requests | |
| import time | |
| def test_self_update(): | |
| print("Testing self-update capability...") | |
| # Original response handler content | |
| original_content = """def generate_response(prompt, tokenizer, model): | |
| inputs = tokenizer(prompt, return_tensors="pt") | |
| outputs = model.generate(**inputs, max_length=200) | |
| return tokenizer.decode(outputs[0], skip_special_tokens=True)""" | |
| # Updated version | |
| updated_content = """def generate_response(prompt, tokenizer, model): | |
| # Improved version with better parameters | |
| inputs = tokenizer(prompt, return_tensors="pt") | |
| outputs = model.generate( | |
| **inputs, | |
| max_length=300, | |
| temperature=0.7, | |
| top_p=0.9, | |
| repetition_penalty=1.1 | |
| ) | |
| return tokenizer.decode(outputs[0], skip_special_tokens=True)""" | |
| # Save original version | |
| with open("response_handler.py", "w") as f: | |
| f.write(original_content) | |
| # Start the app (in a real test, this would be a separate process) | |
| print("Starting with original version...") | |
| # Simulate update process | |
| print("Triggering update...") | |
| response = requests.post("http://localhost:7860/api/predict", json={"data": ["/update"]}) | |
| print(f"Update result: {response.json()['data']}") | |
| # Verify update | |
| time.sleep(2) | |
| with open("response_handler.py", "r") as f: | |
| current_content = f.read() | |
| if updated_content in current_content: | |
| print("β Self-update successful!") | |
| else: | |
| print("β Self-update failed") | |
| # Restore original | |
| with open("response_handler.py", "w") as f: | |
| f.write(original_content) | |
| if __name__ == "__main__": | |
| test_self_update() |