ai-words / use.py
ai-words-deploy
Deploy ai-words to HF Spaces
7e4fadb
Raw
History Blame Contribute Delete
1.75 kB
from dotenv import load_dotenv
load_dotenv()
import time
from transformers import pipeline, GenerationConfig, AutoTokenizer
# 1. Load your trained model and tokenizer
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3-8B")
generator = pipeline(
"text-generation",
model="./trained_model",
tokenizer=tokenizer,
clean_up_tokenization_spaces=False,
)
# 2. Configure generation settings
generation_config = GenerationConfig(
max_new_tokens=50,
do_sample=True,
)
# 3. Give it a starting prompt
prompt = "what is 1+10"
# 4. Generate the response with timing
input_ids = tokenizer.encode(prompt, return_tensors="pt")
tokens_in = input_ids.shape[1]
start_time = time.time()
results = generator(prompt, generation_config=generation_config)
elapsed = time.time() - start_time
# 5. Calculate stats
generated_text = results[0]["generated_text"]
output_ids = tokenizer.encode(generated_text)
tokens_out = len(output_ids)
new_tokens = tokens_out - tokens_in
tokens_per_sec = new_tokens / elapsed if elapsed > 0 else 0
# 6. Print the output and stats
print("\n" + "=" * 60)
print(" GENERATED TEXT")
print("=" * 60)
print(generated_text)
print("=" * 60)
print(f" 📊 Stats:")
print(f" Prompt tokens (in): {tokens_in}")
print(f" Output tokens (out): {tokens_out}")
print(f" New tokens generated: {new_tokens}")
print(f" Generation time: {elapsed:.2f}s")
print(f" Speed: {tokens_per_sec:.1f} tokens/sec")
print(f" Model: ./trained_model")
print(f" Tokenizer: Qwen/Qwen3-8B")
print(f" Sampling: {'yes' if generation_config.do_sample else 'no'}")
print(f" Max new tokens: {generation_config.max_new_tokens}")
print("=" * 60)