Spaces:
Sleeping
Sleeping
| import os | |
| from transformers import AutoTokenizer | |
| from peft import AutoPeftModelForQuestionAnswering | |
| from huggingface_hub import login | |
| def main(): | |
| # Get token from environment (using your existing roberta_token) | |
| hf_token = os.environ.get('roberta_token') | |
| if not hf_token: | |
| print("β roberta_token not found in environment!") | |
| print("Make sure roberta_token is set in your Space secrets.") | |
| return | |
| try: | |
| print("π Logging into Hugging Face Hub...") | |
| login(token=hf_token) | |
| print("β Login successful!") | |
| print("π Loading trained model from ./model_output...") | |
| # Check if model exists | |
| if not os.path.exists("./model_output"): | |
| print("β ./model_output directory not found!") | |
| print("Make sure you've run training first.") | |
| return | |
| # Load your already-trained model | |
| model = AutoPeftModelForQuestionAnswering.from_pretrained("./model_output") | |
| tokenizer = AutoTokenizer.from_pretrained("./model_output") | |
| print("β Model loaded successfully!") | |
| # Push to Hub | |
| model_name = "AvocadoMuffin/roberta-cuad-qa" | |
| print(f"β¬οΈ Pushing model to Hub: {model_name}") | |
| model.push_to_hub(model_name, private=False) | |
| tokenizer.push_to_hub(model_name, private=False) | |
| print(f"π SUCCESS! Model pushed to: https://huggingface.co/{model_name}") | |
| # Also push training info if it exists | |
| training_info_path = "./model_output/training_info.json" | |
| if os.path.exists(training_info_path): | |
| from huggingface_hub import upload_file | |
| upload_file( | |
| path_or_fileobj=training_info_path, | |
| path_in_repo="training_info.json", | |
| repo_id=model_name, | |
| repo_type="model" | |
| ) | |
| print("π Training info also uploaded!") | |
| except Exception as e: | |
| print(f"β Error: {str(e)}") | |
| print("Common issues:") | |
| print("- Invalid token") | |
| print("- Model name already exists (try a different name)") | |
| print("- Network issues") | |
| if __name__ == "__main__": | |
| main() |