版本变更V3.31添加识图功能
This commit is contained in:
@ -87,7 +87,7 @@ def image_search():
|
|||||||
|
|
||||||
UNION ALL
|
UNION ALL
|
||||||
|
|
||||||
-- 2. 采购入库表 (通过 base_id 关联拿真实物料)
|
-- 2. 采购入库表 (通过 base_id 关联拿真实物料信息)
|
||||||
SELECT mb.id, mb.name, mb.spec_model, sb.arrival_photo AS image_url, sb.arrival_image_embedding AS vec
|
SELECT mb.id, mb.name, mb.spec_model, sb.arrival_photo AS image_url, sb.arrival_image_embedding AS vec
|
||||||
FROM stock_buy sb
|
FROM stock_buy sb
|
||||||
JOIN material_base mb ON sb.base_id = mb.id
|
JOIN material_base mb ON sb.base_id = mb.id
|
||||||
@ -95,7 +95,7 @@ def image_search():
|
|||||||
|
|
||||||
UNION ALL
|
UNION ALL
|
||||||
|
|
||||||
-- 3. 半成品入库表
|
-- 3. 半成品入库表 (通过 base_id 关联拿真实物料信息)
|
||||||
SELECT mb.id, mb.name, mb.spec_model, ss.arrival_photo AS image_url, ss.arrival_image_embedding AS vec
|
SELECT mb.id, mb.name, mb.spec_model, ss.arrival_photo AS image_url, ss.arrival_image_embedding AS vec
|
||||||
FROM stock_semi ss
|
FROM stock_semi ss
|
||||||
JOIN material_base mb ON ss.base_id = mb.id
|
JOIN material_base mb ON ss.base_id = mb.id
|
||||||
@ -103,13 +103,15 @@ def image_search():
|
|||||||
|
|
||||||
UNION ALL
|
UNION ALL
|
||||||
|
|
||||||
-- 4. 成品入库表
|
-- 4. 成品入库表 (通过 base_id 关联拿真实物料信息)
|
||||||
SELECT mb.id, mb.name, mb.spec_model, sp.product_photo AS image_url, sp.arrival_image_embedding AS vec
|
SELECT mb.id, mb.name, mb.spec_model, sp.product_photo AS image_url, sp.arrival_image_embedding AS vec
|
||||||
FROM stock_product sp
|
FROM stock_product sp
|
||||||
JOIN material_base mb ON sp.base_id = mb.id
|
JOIN material_base mb ON sp.base_id = mb.id
|
||||||
WHERE sp.arrival_image_embedding IS NOT NULL
|
WHERE sp.arrival_image_embedding IS NOT NULL
|
||||||
) AS combined
|
) AS combined
|
||||||
ORDER BY vec <=> :query_vector LIMIT 10
|
|
||||||
|
-- 核心:计算余弦距离并排序,取最接近的前 50 个!
|
||||||
|
ORDER BY vec <=> :query_vector LIMIT 50
|
||||||
""")
|
""")
|
||||||
|
|
||||||
# 执行查询
|
# 执行查询
|
||||||
@ -150,7 +152,7 @@ def image_search():
|
|||||||
"similarity": round(float(row.similarity), 4)
|
"similarity": round(float(row.similarity), 4)
|
||||||
})
|
})
|
||||||
|
|
||||||
# 【新增】只要凑够了 10 个完全不同的物料,就立刻结束循环
|
# 修改后:只要凑够了 10 个完全不同的物料,就立刻结束循环
|
||||||
if len(results) >= 10:
|
if len(results) >= 10:
|
||||||
break
|
break
|
||||||
|
|
||||||
|
|||||||
@ -1,3 +1,6 @@
|
|||||||
# .env.development
|
# .env.development
|
||||||
# 注意:这里必须写你电脑的局域网 IP
|
# 1. 本地局域网测试用(比如让平板连 192.168.9.33)
|
||||||
|
#VITE_API_BASE_URL=http://192.168.9.33:8000/api/v1
|
||||||
|
|
||||||
|
# 2. 服务器环境用(推送到服务器前,把上面那行注释掉,这行解开)
|
||||||
VITE_API_BASE_URL=http://172.16.0.95:8000/api/v1
|
VITE_API_BASE_URL=http://172.16.0.95:8000/api/v1
|
||||||
Reference in New Issue
Block a user