1"""
2[Title/Звание]
3AI PicPredict
4
5[Description/Обрисовка]
6AI PicPredict - Уеб приложение, чрез което потребител може да качва изображения и да получава предположение от системата
7за това какво може да изобразява(например ако е изображение с числото едно да се изпише текстово, че е изобразено
8числото едно). Потребителя дава feedback за предположението и заявките в следствие се записват в "history" компонент
9представен в уеб приложението. За използване на функционалностите на уеб приложение потребителят трябва да е влязъл в
10собствен профил.
11
12[Functionalities/Надарености]
13Потребителят трябва да влезе в профила си, ако е създал такъв или да се регистрира.
14Чрез уеб приложението потребител може да качва изображения(все още е неясен формата), и AI
15компонент да дава предположение какво може да изобразява(вероятно изображението ще е число или цвете, за да се
16използва вече съществъващ dataset).
17След отговора се очаква потребителя да даде feedback дали предположението е
18коректно и ако е, да се добави към dataset-а, а ако не е, се изисква потребителя да въведе правилния резултат и след
19това да се запише.
20Изображението и резултата се записват за съответния потребител в "history" UI компонент и се дава
21процент на коректност като оценка в самия компонент.
22
23[Milestones/Възлови точки]
24Имплементиране на login/register чрез Django
25Имплементиране на AI компонента за разпознаване на изображение чрез Tensorflow
26Имплементиране на функционалност за добавяне към текущия dataset чрез Tensorflow
27Потребителски интерфейс чрез Django
28Имплементиране на функционалност за качване на изображения от потребител чрез Django
29Имплементиране на функционалност за даване на feedback чрез Django
30Имплементиране на history компонента за предишни заявки на даден потребител чрез Django
31
32[Estimate in man-hours/Времеоценка в човекочасове]
33100 (Трябва да се запозная с базови концепции в Tensorflow и Django)
34
35[Usage of technologies/Потребление на технологии]
36Tensorflow за AI компонентата
37Django за уеб приложението
38"""
----------------------------------------------------------------------
Ran 0 tests in 0.000s
NO TESTS RAN
Димитър Танков
17.01.2025 19:01Мерси
|
Виктор Бечев
17.01.2025 18:08Казал си. Ще пуснем новина като му дойде времето, успех с останалите курсове! :)
|
Димитър Танков
17.01.2025 17:37Понеже ми се насъбра доста работа и нямам особено голям прогрес с проекта, бих предпочел да направя защитата лятото.
Иска ми се просто да се придържам към оригиналната тематика - RAG или имплементация на база данни със similarity search, и това ще отнеме повече време.
|
Димитър Танков
03.12.2024 14:34Ок разбирам. И аз имах идеи да има нещо обвързано с RAG.
Ще ми трябва време обаче, за да обмисля какво точно да променя в идеята.
|
Анна Безлова
03.12.2024 14:10За мен нямаш особено много работа с Tensorflow, освен, ако не планираш сам да си тренираш модела... което няма много смисъл да правиш предвид колко много open-source модели има, които директно можеш да ползваш за predict-ване. Което както Виктор е написал, наистина са 20 реда код и без нужда от тестове. Трябва да заредиш модела, който си си избрал при стартирането на апликацията и просто да го викаш през някакъв ендпойнт.
А и дори сам да си натренираш модела, най-трудната част ти е намиране на подходящ дейтасет, като даже споменаваш вече добре познатите дейтасетове за цифри(MNIST) и за цветя. Има и Imagenet, където не са само цветя, мисля, че имаше всичко възможно. Вариант е и да ползваш директно инструкции на тензорфлоу (https://www.tensorflow.org/tutorials/images/classification, https://www.analyticsvidhya.com/blog/2020/08/top-4-pre-trained-models-for-image-classification-with-python-code), като цяло тренирането на такъв тип нещо е малко извън границите на този курс и не мисля, че ще е честно да бъдеш оценяван на това. Ако все пак имаш желание да го правиш и да включиш някакъв вид вариант да добавяш към базата от вече и без това многото изображения и да пре-тренираш, давай. За мен това е малко като да изобретяваш колелото.
Като цяло АИ компонентите са готини, но истината е, че за използването им обикновено се прави просто някакъв базов кол към нечие АПИ или дори зареждане на модел локално, можеш да ползваш https://ollama.com/ . Ако бях на твое място ще помисля за значително усложняване на проекта. Може например да имаш RAG компонент, който ще изисква да се запознаеш с LangChain и примерно да измислиш някакъв готин начин лесно да структурираш информация с tool calling. Но каква информация и какво ще я правиш, не знам. (Жорка, Вичка, обещавам аз да го проверя :Д)
|
Виктор Бечев
03.12.2024 13:13Login / register са ти 5 минути работа, тъй като идват наготово от Django.
Това да пазиш подробната история ще ти натовари машината, но няма да усложни кода (една таблица с релации към потребителите и към качените ресурси).
Ще призова Ани да си даде мнението как можеш да усложниш проекта, но за мен липсват по-генерални парчета функционалност.
Нещата при теб се въртят около разпознаването на изображения, а това колкото и да го въртим и сучем не можем да го направим много по-различно от "работя с TensorFlow API-то".
|
Димитър Танков
03.12.2024 10:49И аз имах това опасение, че ще стане много кратко и без нужда от тестове. Реално мога да добавя login/register и history-то да бъде обвързано с база данни, в която има информация за заявките на отделните user-и.
|
Виктор Бечев
02.12.2024 23:19За напускането Жорката ми беше подготвил една прекрасна картинка, ела в някоя почивка да ти я покажа, да видим дали смяташ, че PicPredict би я разпознал.
Идеята ти е хубава от гледна точка на това, че е приложима в реалния свят. Единствената опасност е да не се окаже накрая, че имаш 150 реда код, който ти си написал, а всичко останало ти е или генерирано от Django. А от тези 150 реда - 50 да са call-ове към TF. Защото следните:
```
Имплементиране на AI компонента за разпознаване на изображение чрез Tensorflow
Имплементиране на функционалност за добавяне към текущия dataset чрез Tensorflow
Имплементиране на функционалност за качване на изображения от потребител чрез Django
Имплементиране на функционалност за даване на feedback чрез Django
```
Ми звучат като 10-20 реда на фийчър. Може би греша.
Не виждам и как и какво ще тестваш. Имай предвид тези неща, да не се окаже накрая, че се бориш за половината или 2/3 от максималния брой точки _(освен ако това не ти е окей, разбира се)_.
|
f | 1 | """ | f | 1 | """ |
2 | [Title/Звание] | 2 | [Title/Звание] | ||
3 | AI PicPredict | 3 | AI PicPredict | ||
4 | 4 | ||||
5 | [Description/Обрисовка] | 5 | [Description/Обрисовка] | ||
6 | AI PicPredict - Уеб приложение, чрез което потребител може да качва изображения и да получава предположение от системата | 6 | AI PicPredict - Уеб приложение, чрез което потребител може да качва изображения и да получава предположение от системата | ||
7 | за това какво може да изобразява(например ако е изображение с числото едно да се изпише текстово, че е изобразено | 7 | за това какво може да изобразява(например ако е изображение с числото едно да се изпише текстово, че е изобразено | ||
8 | числото едно). Потребителя дава feedback за предположението и заявките в следствие се записват в "history" компонент | 8 | числото едно). Потребителя дава feedback за предположението и заявките в следствие се записват в "history" компонент | ||
n | 9 | представен в уеб приложението. | n | 9 | представен в уеб приложението. За използване на функционалностите на уеб приложение потребителят трябва да е влязъл в |
10 | собствен профил. | ||||
10 | 11 | ||||
11 | [Functionalities/Надарености] | 12 | [Functionalities/Надарености] | ||
n | n | 13 | Потребителят трябва да влезе в профила си, ако е създал такъв или да се регистрира. | ||
12 | Чрез уеб приложението потребител може да качва изображения(все още е неясен формата), и AI | 14 | Чрез уеб приложението потребител може да качва изображения(все още е неясен формата), и AI | ||
13 | компонент да дава предположение какво може да изобразява(вероятно изображението ще е число или цвете, за да се | 15 | компонент да дава предположение какво може да изобразява(вероятно изображението ще е число или цвете, за да се | ||
14 | използва вече съществъващ dataset). | 16 | използва вече съществъващ dataset). | ||
15 | След отговора се очаква потребителя да даде feedback дали предположението е | 17 | След отговора се очаква потребителя да даде feedback дали предположението е | ||
16 | коректно и ако е, да се добави към dataset-а, а ако не е, се изисква потребителя да въведе правилния резултат и след | 18 | коректно и ако е, да се добави към dataset-а, а ако не е, се изисква потребителя да въведе правилния резултат и след | ||
17 | това да се запише. | 19 | това да се запише. | ||
n | 18 | Изображението и резултата се записват локално за текущата сесия в "history" UI компонент и се дава | n | 20 | Изображението и резултата се записват за съответния потребител в "history" UI компонент и се дава |
19 | процент на коректност като оценка в самия компонент. | 21 | процент на коректност като оценка в самия компонент. | ||
20 | 22 | ||||
21 | [Milestones/Възлови точки] | 23 | [Milestones/Възлови точки] | ||
n | n | 24 | Имплементиране на login/register чрез Django | ||
22 | Имплементиране на AI компонента за разпознаване на изображение чрез Tensorflow | 25 | Имплементиране на AI компонента за разпознаване на изображение чрез Tensorflow | ||
23 | Имплементиране на функционалност за добавяне към текущия dataset чрез Tensorflow | 26 | Имплементиране на функционалност за добавяне към текущия dataset чрез Tensorflow | ||
24 | Потребителски интерфейс чрез Django | 27 | Потребителски интерфейс чрез Django | ||
25 | Имплементиране на функционалност за качване на изображения от потребител чрез Django | 28 | Имплементиране на функционалност за качване на изображения от потребител чрез Django | ||
26 | Имплементиране на функционалност за даване на feedback чрез Django | 29 | Имплементиране на функционалност за даване на feedback чрез Django | ||
t | 27 | Имплементиране на history компонента на предишни заявки от текущата сесия чрез Django | t | 30 | Имплементиране на history компонента за предишни заявки на даден потребител чрез Django |
28 | 31 | ||||
29 | [Estimate in man-hours/Времеоценка в човекочасове] | 32 | [Estimate in man-hours/Времеоценка в човекочасове] | ||
30 | 100 (Трябва да се запозная с базови концепции в Tensorflow и Django) | 33 | 100 (Трябва да се запозная с базови концепции в Tensorflow и Django) | ||
31 | 34 | ||||
32 | [Usage of technologies/Потребление на технологии] | 35 | [Usage of technologies/Потребление на технологии] | ||
33 | Tensorflow за AI компонентата | 36 | Tensorflow за AI компонентата | ||
34 | Django за уеб приложението | 37 | Django за уеб приложението | ||
35 | """ | 38 | """ |
Legends | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
|