egerber / spaCy-entity-linker

spaCy module for linking text to Wikidata items
MIT License
215 stars 32 forks source link

OperationalError: unable to open database file #4

Closed vminvsky closed 3 years ago

vminvsky commented 3 years ago

Hi, every time I run doc = nlp("I watched the Pirates of the Caribbean last silvester") I get the error OperationalError: unable to open database file. Is anyone getting a similar error?

egerber commented 3 years ago

Hi, have you downloaded the database file prior to running the example?

vminvsky commented 3 years ago

@egerber I did. I found out the issue. It turned out that some of my Python libraries were saved into two different directories. Consequently, when we called the DatabaseConnection.py it wasn't able to find the database, which was also strangely saved in both locations. I ended up editing the source code to set DB_DEFAULT_PATH to the known location.

By the way, have you had a chance to work on contexts? I find the entity linker is good, but not amazing. For example, it converts "way" to Andrew John Henry Way. If I was to retrain it, do you have any tips?

Thanks!

vminvsky commented 3 years ago

Also, do you know an effective way to parallelize this process?

egerber commented 3 years ago

Hi @vminvsky

I could not reproduce your error. Unless you can provide more information, I assume this is just some due to some weird environment setup.

w.r.t contexts: Currently there is not much ML going on here. It's basically string matching + max prior. I was hoping to find time to implement more sophisticated models, but so far have been blocked by other tasks. Hopefully in the near future, I'll get to work on that.

w.r.t. to parallelization: I assume the normal nlp.pipe method from spacy should do the trick here (https://spacy.io/api/language#pipe