Proč python dát FileNotFoundError: [Errno 2] Žádný takový soubor nebo adresář chybu i když soubor existuje?

0

Otázka

Snažím se, aby model strojového učení a používání django rest framework, aby jej připojit. Můj strukturu složek jako je tento

server
|
+-- chat
|    |
|    +-- DistilBertModel
|    |    |
|    |    +-- OurModel
|    |    |    |
|    |    |    +-- BERT_model.py
|    |    |    +-- chatbot.py
|    |    |    +-- chatbot_predict.py
|    |    |    +-- model.sav
|    |    +-- data
|    |    |    |
|    |    |    +-- test_chatbot.csv
|    |    |    +-- answers.json
|    +-- migrations
|    +-- __init__.py
|    +-- admin.py
|    +-- apps.py
|    +-- models.py
|    +-- serializers.py
|    +-- tests.py
|    +-- urls.py
|    +-- views.py
+-- core
|
+-- templates
|
+-- db.sqlite3
|
+-- manage.py
|
+-- requirements.txt

V chatbot_predict.py soubor se snažím načíst model a získat predikce pomocí tohoto modelu. Kód je takhle

import joblib
loaded_model = joblib.load ('model.sav')

def get_prediction (message, loaded_model = loaded_model):
    return prediction

Když jsem spustit tento soubor pomocí python chatbot_predict.py pomocí příkazového řádku funguje to v pohodě. Nicméně, když jsem importovat tento get_prediction funkce v server/chat/views.py a spustit python manage.py runserver to dává chybová enter image description here

Co dělám špatně, aby si to FileNotFoundError ?

django machine-learning python
2021-11-23 21:02:19
1

Nejlepší odpověď

0

Je to proto, že soubor je nyní v jiném místě, než je python script soubor, nebo aktuální adresář.
Zkuste poskytuje úplnou cestu k souboru modelu (ne jen jméno) a mělo by to fungovat v obou případech.

V ideálním případě byste měli uplatnit všechny své skripty v kořenovém adresáři vašeho projektu (což se stává pracovní adresář) a podle toho stanovit cesty k souboru, načíst, relativní do kořenového adresáře.

2021-11-23 23:19:23

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................