anmolstha commited on
Commit
462242d
1 Parent(s): 401810e

Upload 10 files

Browse files
.gitattributes CHANGED
@@ -1,35 +1,6 @@
1
- *.7z filter=lfs diff=lfs merge=lfs -text
2
- *.arrow filter=lfs diff=lfs merge=lfs -text
3
- *.bin filter=lfs diff=lfs merge=lfs -text
4
- *.bz2 filter=lfs diff=lfs merge=lfs -text
5
- *.ckpt filter=lfs diff=lfs merge=lfs -text
6
- *.ftz filter=lfs diff=lfs merge=lfs -text
7
- *.gz filter=lfs diff=lfs merge=lfs -text
8
- *.h5 filter=lfs diff=lfs merge=lfs -text
9
- *.joblib filter=lfs diff=lfs merge=lfs -text
10
- *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
- *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
- *.model filter=lfs diff=lfs merge=lfs -text
13
- *.msgpack filter=lfs diff=lfs merge=lfs -text
14
- *.npy filter=lfs diff=lfs merge=lfs -text
15
- *.npz filter=lfs diff=lfs merge=lfs -text
16
- *.onnx filter=lfs diff=lfs merge=lfs -text
17
- *.ot filter=lfs diff=lfs merge=lfs -text
18
- *.parquet filter=lfs diff=lfs merge=lfs -text
19
- *.pb filter=lfs diff=lfs merge=lfs -text
20
- *.pickle filter=lfs diff=lfs merge=lfs -text
21
- *.pkl filter=lfs diff=lfs merge=lfs -text
22
- *.pt filter=lfs diff=lfs merge=lfs -text
23
- *.pth filter=lfs diff=lfs merge=lfs -text
24
- *.rar filter=lfs diff=lfs merge=lfs -text
25
- *.safetensors filter=lfs diff=lfs merge=lfs -text
26
- saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
- *.tar.* filter=lfs diff=lfs merge=lfs -text
28
- *.tar filter=lfs diff=lfs merge=lfs -text
29
- *.tflite filter=lfs diff=lfs merge=lfs -text
30
- *.tgz filter=lfs diff=lfs merge=lfs -text
31
- *.wasm filter=lfs diff=lfs merge=lfs -text
32
- *.xz filter=lfs diff=lfs merge=lfs -text
33
- *.zip filter=lfs diff=lfs merge=lfs -text
34
- *.zst filter=lfs diff=lfs merge=lfs -text
35
- *tfevents* filter=lfs diff=lfs merge=lfs -text
 
1
+ similarity_scores.pkl filter=lfs diff=lfs merge=lfs -text
2
+ pt.pkl filter=lfs diff=lfs merge=lfs -text
3
+ models/anime_dt.pkl filter=lfs diff=lfs merge=lfs -text
4
+ models/merged_df.pkl filter=lfs diff=lfs merge=lfs -text
5
+ models/pt.pkl filter=lfs diff=lfs merge=lfs -text
6
+ models/similarity_scores.pkl filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Procfile ADDED
@@ -0,0 +1 @@
 
 
1
+ web: gunicorn app:app
app.py ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from flask import Flask,render_template,request
2
+ import pickle
3
+ import numpy as np
4
+
5
+ merged=pickle.load(open('models/merged_df.pkl', 'rb'))
6
+ pt=pickle.load(open('models/pt.pkl', 'rb'))
7
+ anime_dt=pickle.load(open('models/anime_dt.pkl', 'rb'))
8
+ similarity_scores=pickle.load(open('models/similarity_scores.pkl', 'rb'))
9
+
10
+ app = Flask(__name__)
11
+
12
+ @app.route('/')
13
+ def index():
14
+ return render_template('index.html',
15
+ anime_name=list(merged['Name'].values),
16
+ score=list(merged['score'].values),
17
+ scored_by=list(merged['scored_by'].values),
18
+ Genres=list(merged['Genres'].values),
19
+ Studios=list(merged['Studios'].values),
20
+ image=list(merged['Image URL'].values)
21
+ )
22
+
23
+ @app.route('/recommend')
24
+ def recommend_ui():
25
+ return render_template('recommend.html')
26
+
27
+ @app.route('/recommend_animes',methods=['post'])
28
+ def recommend():
29
+ user_input = request.form.get('user_input')
30
+ index = np.where(pt.index == user_input)[0][0]
31
+ similar_items = sorted(list(enumerate(similarity_scores[index])), key=lambda x: x[1], reverse=True)[1:5]
32
+
33
+ data = []
34
+ for i in similar_items:
35
+ item = []
36
+ temp_df = anime_dt[anime_dt['Name'] == pt.index[i[0]]]
37
+ item.extend(list(temp_df.drop_duplicates('Name')['Name'].values))
38
+ item.extend(list(temp_df.drop_duplicates('Name')['Genres'].values))
39
+ item.extend(list(temp_df.drop_duplicates('Name')['Image URL'].values))
40
+ item.extend(list(temp_df.drop_duplicates('Name')['Studios'].values))
41
+
42
+ data.append(item)
43
+
44
+ print(data)
45
+
46
+ return render_template('recommend.html',data=data)
47
+
48
+
49
+
50
+ if __name__ == '__main__':
51
+ app.run(debug=True)
index.html ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <title>ANIME RECOMMENDER SYSTEM</title>
6
+ <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
7
+
8
+ </head>
9
+ <style>
10
+ .text-white{
11
+ color:white
12
+ }
13
+ </style>
14
+ <body style="background-color:black">
15
+ <nav class="navbar" style="background-color:#00a65a">
16
+ <a class="navbar-brand">MY ANIME Recommender</a>
17
+ <ul class="navbar-nav">
18
+ <li><a href="/">HOME</a></li>
19
+ <li><a href="/recommend">RECOMMEND</a></li>
20
+ <li><a>CONTACT</a></li>
21
+ </ul>
22
+ </nav>
23
+
24
+ <div class="container">
25
+ <div class="row">
26
+ <div class="col-md-12">
27
+ <h1 class="text-white" style="font-size:40px">Top 50 Anime</h1>
28
+ </div>
29
+
30
+ {% for i in range(anime_name|length) %}
31
+ <div class="col-md-3" style="margin-top:30px">
32
+ <div class="card">
33
+ <div class="card-body">
34
+ <img class="card-img-top" src="{{ image[i] }}">
35
+ <h3>{{ anime_name[i] }}</h3>
36
+ <p>score - {{ score[i] }}</p>
37
+ <p>scored by - {{ scored_by[i] }}</p>
38
+ <p>Genres - {{ Genres[i] }}</p>
39
+ <p>Studios - {{ Studios[i] }}</p>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ {% endfor %}
44
+
45
+
46
+
47
+ </div>
48
+ </div>
49
+
50
+ </body>
51
+ </html>
models/anime_dt.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3c0ce2ea4108f530963ffd4d09d62f0b6acfec203cc212db442347591708289f
3
+ size 14547844
models/merged_df.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cef0fcae744d9c29e93d3024be789484b86fe491f4f706875d3adf4c586f41f3
3
+ size 7494
models/pt.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c21e1922eafc65914f08f70594b2cb43eaa8cdecc2d74ff44b6e35d742ee96fa
3
+ size 408766135
models/similarity_scores.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e464d95852da8c10ac3159c082d8c0dac1390def4d1010e4f7fc86cf1ce87ab5
3
+ size 52469931
recommend.html ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <title>ANIME RECOMMENDER SYSTEM</title>
6
+ <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
7
+
8
+ </head>
9
+ <style>
10
+ .text-white{
11
+ color:white
12
+ }
13
+ </style>
14
+ <body style="background-color:black">
15
+ <nav class="navbar" style="background-color:#00a65a">
16
+ <a class="navbar-brand">MY ANIME RECOMMENDER</a>
17
+ <ul class="navbar-nav">
18
+ <li><a href="/">home</a></li>
19
+ <li><a href="/recommend">recommend</a></li>
20
+ <li><a>contact</a></li>
21
+ </ul>
22
+ </nav>
23
+
24
+ <div class="container">
25
+ <div class="row">
26
+ <div class="col-md-12">
27
+ <h1 class="text-white" style="font-size:40px">RECOMMEND ANIME</h1>
28
+ <form action="/recommend_animes" method="post">
29
+ <input name="user_input" type="text" class="form-control"><br>
30
+ <input type="submit" class="btn btn-lg btn-warning">
31
+ </form>
32
+ </div>
33
+
34
+ {% if data %}
35
+
36
+ {% for i in data %}
37
+ <div class="col-md-3" style="margin-top:30px">
38
+ <div class="card">
39
+ <div class="card-body">
40
+ <img class="card-img-top" src="{{i[2]}}">
41
+ <h3>{{i[0]}}</h3>
42
+ <p>{{i[1]}}</p>
43
+ <p>{{i[3]}}</p>
44
+ </div>
45
+ </div>
46
+ </div>
47
+ {% endfor %}
48
+
49
+ {% endif %}
50
+
51
+
52
+
53
+ </div>
54
+ </div>
55
+
56
+ </body>
57
+ </html>
requirements.txt ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ flask
2
+ streamlit
3
+ pandas
4
+ numpy
5
+ gunicorn