首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用模糊搜索将文本与图像进行匹配

使用模糊搜索将文本与图像进行匹配
EN

Stack Overflow用户
提问于 2021-03-04 00:07:46
回答 1查看 53关注 0票数 0

我使用这个包:https://github.com/blevesearch/bleve来创建products2images的映射。

当我使用单个术语时,它工作得很好,但如果我使用整个短语,它就完全不起作用了。例如,如果我使用以下命令:

代码语言:javascript
复制
    query := bleve.NewFuzzyQuery("lacteo")

它将正确地映射正确的图像。但是,如果我这样做:

代码语言:javascript
复制
    query := bleve.NewFuzzyQuery("lacteo leche yogurt cebolla")

它根本不会匹配任何内容。

我在这里做错了什么?

设置数据库:

代码语言:javascript
复制
package main

import (
    "github.com/blevesearch/bleve"
)

func main() {
    message := []struct {
        Id   string
        Body string
    }{
        {
            Id:   "lacteos.jpg",
            Body: "lacteo leche yogurt cebolla",
        },
        {
            Id:   "cafe.jpg",
            Body: "café yerba té",
        },
        {
            Id:   "queso.jpg",
            Body: "lacteo leche yogurt cebolla queso",
        },
        {
            Id:   "harina.jpg",
            Body: "harina",
        },
    }
    mapping := bleve.NewIndexMapping()
    index, err := bleve.New("example.bleve", mapping)
    if err != nil {
        panic(err)
    }
    index.Index(message[0].Id, message[0])
    index.Index(message[1].Id, message[1])
    index.Index(message[2].Id, message[2])
    index.Index(message[3].Id, message[3])
}

搜索某些内容:

代码语言:javascript
复制
package main

import (
    "fmt"
    "log"

    "github.com/blevesearch/bleve"
)

func main() {
    index, _ := bleve.Open("example.bleve")
    query := bleve.NewFuzzyQuery("lacteo leche yogurt cebolla queso")
    query.SetFuzziness(2)
    searchRequest := bleve.NewSearchRequest(query)
    searchResult, err := index.Search(searchRequest)
    if err != nil {
        log.Fatal(err.Error())
    }
    for _, v := range searchResult.Hits {
        fmt.Println(v.ID)
        fmt.Println(v.Score)
        fmt.Println("-------------")
    }
}
EN

回答 1

Stack Overflow用户

发布于 2021-03-06 02:49:06

所以,在他们的repo:https://github.com/blevesearch/bleve/issues/1565上发布了一个问题后,我发现这实际上是不受支持的。我最终添加了更多的逻辑到我的一侧,以使其工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66460738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档