1import pickle
2import numpy as np
3from tensorflow.keras.models import load_model
4from tensorflow.keras.preprocessing.sequence import pad_sequences
5
6# Load resources
7with open('tokenizer.pkl', 'rb') as f:
8 tokenizer = pickle.load(f)
9with open('max_len.pkl', 'rb') as f:
10 max_len = pickle.load(f)
11model = load_model('model_wrd.keras')
12
13# Predict function
14def predict_next_word(seed_text):
15 sequence = tokenizer.texts_to_sequences([seed_text])[0]
16 sequence = pad_sequences([sequence], maxlen=max_len, padding='pre')
17 pred_index = np.argmax(model.predict(sequence), axis=-1)[0]
18 for word, index in tokenizer.word_index.items():
19 if index == pred_index:
20 return word
21 return "<unknown>"
22
23---
24
25### ✅ Also, update the following fields in the Metadata UI:
26
27| Field | Value |
28|----------------|--------------------|
29| `language` | English |
30| `pipeline_tag` | text-generation |
31| `library_name` | tensorflow |
32| `tags` | lstm, keras, next-word-prediction, nlp, text-generation |
33
34Let me know when you're done or if you'd like me to walk you through the fields too!