isreegan commited on
Commit
cd4e358
·
verified ·
1 Parent(s): edc3963

Upload 5 files

Browse files
Files changed (5) hide show
  1. APP.py +45 -0
  2. Number_to_word_model.pkl +3 -0
  3. config.json +12 -0
  4. requirements.txt +3 -0
  5. tokenizer.json +60 -0
APP.py ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # -*- coding: utf-8 -*-
2
+ """model.ipynb
3
+
4
+ Automatically generated by Colab.
5
+
6
+ Original file is located at
7
+ https://colab.research.google.com/drive/1gCiedN3pbGAmSaO0KWH3Z2IFLcaZLwuw
8
+ """
9
+
10
+ from huggingface_hub import hf_hub_download
11
+ import pickle
12
+ import gradio as gr
13
+
14
+ # Replace with your Hugging Face repo info
15
+ repo_id = "Sonia2k5/Number_to_words"
16
+ filename = "Number_to_word_model.pkl"
17
+
18
+ # Download the model from the hub
19
+ model_path = hf_hub_download(repo_id=repo_id, filename=filename)
20
+
21
+ # Now `model` is ready to use
22
+ with open(model_path, "rb") as f:
23
+ model, le = pickle.load(f)
24
+
25
+
26
+ def predict_number_to_word(number):
27
+ if not isinstance(number, (int, float)):
28
+ return "Please enter a valid number."
29
+ if number < 1 or number > 1000:
30
+ return "❌ Please enter a number between 1 and 1000 only."
31
+ encoded = model.predict([[int(number)]])
32
+ word = le.inverse_transform(encoded)[0]
33
+ return f"{int(number)} → {word}"
34
+
35
+ # Create Gradio interface
36
+ iface = gr.Interface(
37
+ fn=predict_number_to_word,
38
+ inputs=gr.Number(label="Enter a number (1 to 1000)"),
39
+ outputs=gr.Textbox(label="Number in Words"),
40
+ title="🔢 Number to Word Converter",
41
+ description="Converts a number between 1 and 1000 to its English word using a Decision Tree model."
42
+ )
43
+
44
+ iface.launch()
45
+
Number_to_word_model.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:145f92d732d5738998866f66d4ff36ad2c96edc221f96ff84457b135e87102b1
3
+ size 16220990
config.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model_name": "number_to_word_classifier",
3
+ "model_type": "DecisionTreeClassifier",
4
+ "input_range": [
5
+ 1,
6
+ 100
7
+ ],
8
+ "output_type": "number_to_english_word",
9
+ "library": "scikit-learn",
10
+ "version": "1.0",
11
+ "author": "Sonia"
12
+ }
requirements.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ gradio
2
+ transformers
3
+ torch
tokenizer.json ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "version": "1.0",
3
+ "truncation": null,
4
+ "padding": null,
5
+ "added_tokens": [],
6
+ "normalizer": {
7
+ "type": "Lowercase"
8
+ },
9
+ "pre_tokenizer": {
10
+ "type": "Whitespace"
11
+ },
12
+ "post_processor": null,
13
+ "decoder": {
14
+ "type": "WordPiece",
15
+ "cleanup": true
16
+ },
17
+ "model": {
18
+ "vocab": {
19
+ "one": 0,
20
+ "two": 1,
21
+ "three": 2,
22
+ "four": 3,
23
+ "five": 4,
24
+ "six": 5,
25
+ "seven": 6,
26
+ "eight": 7,
27
+ "nine": 8,
28
+ "ten": 9,
29
+ "eleven": 10,
30
+ "twelve": 11,
31
+ "thirteen": 12,
32
+ "fourteen": 13,
33
+ "fifteen": 14,
34
+ "sixteen": 15,
35
+ "seventeen": 16,
36
+ "eighteen": 17,
37
+ "nineteen": 18,
38
+ "twenty": 19,
39
+ "twenty-one": 20,
40
+ "twenty-two": 21,
41
+ "twenty-three": 22,
42
+ "twenty-four": 23,
43
+ "twenty-five": 24,
44
+ "twenty-six": 25,
45
+ "twenty-seven": 26,
46
+ "twenty-eight": 27,
47
+ "twenty-nine": 28,
48
+ "thirty": 29,
49
+ "forty": 30,
50
+ "fifty": 31,
51
+ "sixty": 32,
52
+ "seventy": 33,
53
+ "eighty": 34,
54
+ "ninety": 35,
55
+ "hundred": 36
56
+ },
57
+ "type": "WordLevel",
58
+ "unk_token": "[UNK]"
59
+ }
60
+ }