Eine einfache Dokument- und Bildsuchmaschine, die in Keras implementiert ist
GOTO KERAS_SEARCH_ENGINE_WEB -Verzeichnis und führen Sie den folgenden Befehl aus:
python flaskr.pyNavigieren Sie jetzt in Ihrem Browser zu http: // localhost: 5000 und Sie können ausprobieren
Wenn der Web -API -Server ausgeführt wird, können Sie ein neues Dokument indexieren, indem Sie die folgende Web -API aufrufen:
http://localhost:5000/index_textBeispielsweise ist der Befehl curl, der die Web -API aufzurufen, um einige Dokumente zu indizieren:
curl -H ' Content-Type application/json ' -X POST -d ' {"doc":"Whether you think that you can, or that you can ' t, you are usually right. " }' http://localhost:5000/index_text
curl -H 'Content-Type application/json' -X POST -d '{ " doc " : " Try to learn something about everything and everything about something. " }' http://localhost:5000/index_text
curl -H 'Content-Type application/json' -X POST -d '{ " doc " : " You can avoid reality, but you cannot avoid the consequences of avoiding reality. " }' http://localhost:5000/index_text
curl -H 'Content-Type application/json' -X POST -d '{ " doc " : " A mathematician is a device for turning coffee into theorems. " }' http://localhost:5000/index_text
curl -H 'Content-Type application/json' -X POST -d '{ " doc " : " In theory, there is no difference between theory and practice. But in practice, there is. " }' http://localhost:5000/index_text
curl -H 'Content-Type application/json' -X POST -d '{ " doc " : " I find that the harder I work, the more luck I seem to have. " }' http://localhost:5000/index_textUm mithilfe der Web -API abzufragen, können Sie die folgende Web -API anrufen:
curl -H ' Content-Type application/json ' -X POST -d ' {"query":"mathematician and coffee", "limit": 3, "model": "glove"} ' http://localhost:5000/search_textWenn der Web -API -Server ausgeführt wird, können Sie ein neues Bild indexieren, indem Sie die folgende Web -API per Post -Anforderung anrufen:
http://localhost:5000/index_imageSie können ähnliche Bilder abfragen, indem Sie die folgende Web -API -Postanforderung anrufen:
http://localhost:5000/search_image/10wobei 10 die Grenze für die Anzahl der zurückgegebenen Bilder ist
Es gibt auch eine SearchEngineClient -Klasse in der keras_search_engine_client. Die Beispielcodes sehen aus wie:
from keras_search_engine_client . search_engine_client import SearchEngineClient
client = SearchEngineClient ()
# text indexing and search
doc_count = client . doc_count ()
if doc_count < 4 :
client . index_text ( 'Whether you think that you can, or that you can.' )
client . index_text ( 'Try to learn something about everything and everything about something.' )
client . index_text ( 'You can avoid reality, but you cannot avoid the consequences of avoiding reality.' )
client . index_text ( 'A mathematician is a device for turning coffee into theorems.' )
client . index_text ( 'In theory, there is no difference between theory and practice. But in practice, there is.' )
client . index_text ( 'I find that the harder I work, the more luck I seem to have.' )
client . search_text ( query = 'mathematician and coffee' , limit = 3 , model = 'glove' )
client . search_text ( query = 'mathematician and coffee' , limit = 3 , model = 'doc-encoder' )
# image indexing and search
client . index_image ( './images/Pokemon7.png' )
client . search_image ( './images/Pokemon1.jpg' , 6 )