Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
S
search_tips
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
rank
search_tips
Commits
53e88b81
Commit
53e88b81
authored
Feb 11, 2020
by
lixiaofang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
灰度
parent
80bb4be3
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
26 additions
and
46 deletions
+26
-46
auto_tips.py
search/utils/auto_tips.py
+20
-40
__init__.pyc
search_tips/__init__.pyc
+0
-0
wordresemble.py
trans2es/models/wordresemble.py
+2
-2
type_info.py
trans2es/type_info.py
+2
-2
doctor_transfer.py
trans2es/utils/doctor_transfer.py
+2
-2
No files found.
search/utils/auto_tips.py
View file @
53e88b81
...
@@ -78,8 +78,6 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
...
@@ -78,8 +78,6 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
if
hit_item
[
"_source"
][
"ori_name"
]
not
in
have_read_tips_set
:
if
hit_item
[
"_source"
][
"ori_name"
]
not
in
have_read_tips_set
:
have_read_tips_set
.
add
(
hit_item
[
"_source"
][
"ori_name"
])
have_read_tips_set
.
add
(
hit_item
[
"_source"
][
"ori_name"
])
highlight_marks
=
u'<ems>
%
s</ems>'
%
query
highlight_marks
=
u'<ems>
%
s</ems>'
%
query
# hit_item["_source"]["highlight_name"] = hit_item["_source"]["ori_name"].replace(query,
# highlight_marks)
hit_item
[
"_source"
][
"highlight_name"
]
=
set_highlihgt
(
query
,
hit_item
[
"_source"
][
"ori_name"
])
hit_item
[
"_source"
][
"highlight_name"
]
=
set_highlihgt
(
query
,
hit_item
[
"_source"
][
"ori_name"
])
if
hit_item
[
"_source"
][
"type_flag"
]
==
"hospital"
:
if
hit_item
[
"_source"
][
"type_flag"
]
==
"hospital"
:
if
lat
is
not
None
and
lng
is
not
None
and
lat
!=
0.0
and
lng
!=
0.0
:
if
lat
is
not
None
and
lng
is
not
None
and
lat
!=
0.0
and
lng
!=
0.0
:
...
@@ -130,41 +128,27 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
...
@@ -130,41 +128,27 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
ret_list
.
extend
(
get_tag_wiki_data
)
ret_list
.
extend
(
get_tag_wiki_data
)
ret_list
.
extend
(
get_doctor_hospital_data
)
ret_list
.
extend
(
get_doctor_hospital_data
)
if
len
(
ret_list
)
>=
50
:
if
gray_number
==
3
:
# 在去掉强加权的逻辑上根据词频和tag转化率排序后再前段强加权
if
gray_number
in
(
1
,
2
):
front_data
=
[]
logging
.
info
(
"get-----------------ret_list:
%
s"
%
ret_list
)
end_data
=
[]
equal_data
=
[]
return
ret_list
[:
50
]
need_change_sort
=
ret_list
[:
30
]
else
:
for
item
in
need_change_sort
:
logging
.
info
(
"get+++++++++++++++++ret_list:
%
s"
%
ret_list
)
ori_name
=
item
.
get
(
"ori_name"
,
None
)
if
query
==
ori_name
:
# 在去掉强加权的逻辑上根据词频和tag转化率排序后再前段强加权
equal_data
.
append
(
item
)
front_data
=
[]
elif
query
==
ori_name
[:
len
(
query
)]:
end_data
=
[]
front_data
.
append
(
item
)
equal_data
=
[]
else
:
need_change_sort
=
ret_list
[:
30
]
end_data
.
append
(
item
)
for
item
in
need_change_sort
:
equal_data
.
extend
(
front_data
)
ori_name
=
item
.
get
(
"ori_name"
,
None
)
equal_data
.
extend
(
end_data
)
if
query
==
ori_name
:
equal_data
.
extend
(
ret_list
[
30
:])
equal_data
.
append
(
item
)
ret_list
=
equal_data
elif
query
==
ori_name
[:
len
(
query
)]:
front_data
.
append
(
item
)
else
:
end_data
.
append
(
item
)
logging
.
info
(
"get+++++++++++++++++equal_data:
%
s"
%
equal_data
)
if
len
(
ret_list
)
>=
50
:
logging
.
info
(
"get+++++++++++++++++front_data:
%
s"
%
front_data
)
return
ret_list
[:
50
]
logging
.
info
(
"get+++++++++++++++++end_data:
%
s"
%
end_data
)
logging
.
info
(
"get+++++++++++++++++ret_list:
%
s"
%
ret_list
)
equal_data
.
extend
(
front_data
)
equal_data
.
extend
(
end_data
)
equal_data
.
extend
(
ret_list
[
30
:])
ret_list
=
equal_data
return
ret_list
else
:
else
:
query_ret_list
=
[]
query_ret_list
=
[]
wordresemble_ret_list
=
[]
wordresemble_ret_list
=
[]
...
@@ -184,7 +168,6 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
...
@@ -184,7 +168,6 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
describe
=
"约"
+
str
(
result_num
)
+
"个结果"
if
result_num
else
""
describe
=
"约"
+
str
(
result_num
)
+
"个结果"
if
result_num
else
""
logging
.
info
(
"get result_num:
%
s"
%
result_num
)
logging
.
info
(
"get result_num:
%
s"
%
result_num
)
highlight_marks
=
u'<ems>
%
s</ems>'
%
query
highlight_marks
=
u'<ems>
%
s</ems>'
%
query
# highlight_name = ori_name.replace(query, highlight_marks)
highlight_name
=
set_highlihgt
(
query
,
ori_name
)
highlight_name
=
set_highlihgt
(
query
,
ori_name
)
if
ori_name
==
query
:
if
ori_name
==
query
:
query_ret_list
.
append
(
query_ret_list
.
append
(
...
@@ -204,7 +187,6 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
...
@@ -204,7 +187,6 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
ret_list
.
extend
(
wordresemble_ret_list
)
ret_list
.
extend
(
wordresemble_ret_list
)
###繁体字删掉,把搜索结果加到简体字上边
###繁体字删掉,把搜索结果加到简体字上边
fanti_query
=
[{
'痩脸针'
:
"瘦脸针"
}]
fanti_query
=
[{
'痩脸针'
:
"瘦脸针"
}]
for
item
in
ret_list
:
for
item
in
ret_list
:
result_num
=
[[
item
[
'results_num'
],
list
(
ret
.
values
())[
0
],
list
(
ret
.
keys
())[
0
]]
for
ret
in
fanti_query
result_num
=
[[
item
[
'results_num'
],
list
(
ret
.
values
())[
0
],
list
(
ret
.
keys
())[
0
]]
for
ret
in
fanti_query
if
list
(
ret
.
keys
())[
0
]
==
item
[
'ori_name'
]]
if
list
(
ret
.
keys
())[
0
]
==
item
[
'ori_name'
]]
...
@@ -215,12 +197,10 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
...
@@ -215,12 +197,10 @@ def get_suggest_tips(query, lat, lng, offset=0, size=50, device_id=None):
if
item
[
'ori_name'
]
==
result_num
[
0
][
1
]:
if
item
[
'ori_name'
]
==
result_num
[
0
][
1
]:
item
[
'results_num'
]
+=
result_num
[
0
][
0
]
item
[
'results_num'
]
+=
result_num
[
0
][
0
]
####
if
len
(
ret_list
)
>=
50
:
if
len
(
ret_list
)
>=
50
:
return
ret_list
[
0
:
50
]
return
ret_list
[
0
:
50
]
else
:
else
:
return
ret_list
return
ret_list
except
:
except
:
logging
.
error
(
"catch exception,err_msg:
%
s"
%
traceback
.
format_exc
())
logging
.
error
(
"catch exception,err_msg:
%
s"
%
traceback
.
format_exc
())
return
list
()
return
list
()
...
...
search_tips/__init__.pyc
View file @
53e88b81
No preview for this file type
trans2es/models/wordresemble.py
View file @
53e88b81
...
@@ -29,9 +29,10 @@ class WordRel(models.Model):
...
@@ -29,9 +29,10 @@ class WordRel(models.Model):
class
WordRelResemble
(
models
.
Model
):
class
WordRelResemble
(
models
.
Model
):
"""近义词数据表
"""近义词数据表
"""
"""
class
Meta
:
class
Meta
:
app_label
=
'api'
app_label
=
'api'
db_table
=
'api_wordrelresemble'
db_table
=
'api_wordrelresemble'
wordrel
=
models
.
ForeignKey
(
WordRel
,
related_name
=
'all_resembles'
)
wordrel
=
models
.
ForeignKey
(
WordRel
,
related_name
=
'all_resembles'
)
word
=
models
.
CharField
(
u'近义词'
,
max_length
=
50
,
db_index
=
True
)
word
=
models
.
CharField
(
u'近义词'
,
max_length
=
50
,
db_index
=
True
)
\ No newline at end of file
trans2es/type_info.py
View file @
53e88b81
...
@@ -368,11 +368,11 @@ def get_type_info_map():
...
@@ -368,11 +368,11 @@ def get_type_info_map():
),
),
TypeInfo
(
TypeInfo
(
name
=
'suggest-v1'
,
name
=
'suggest-v1'
,
type
=
'doctor_tips'
,
# doctor
type
=
'doctor_tips
-v1
'
,
# doctor
model
=
doctor
.
Doctor
,
model
=
doctor
.
Doctor
,
query_deferred
=
lambda
:
doctor
.
Doctor
.
objects
.
all
()
.
filter
(
query_deferred
=
lambda
:
doctor
.
Doctor
.
objects
.
all
()
.
filter
(
doctor_type__in
=
[
DOCTOR_TYPE
.
DOCTOR
,
DOCTOR_TYPE
.
OFFICER
])
.
query
,
doctor_type__in
=
[
DOCTOR_TYPE
.
DOCTOR
,
DOCTOR_TYPE
.
OFFICER
])
.
query
,
get_data_func
=
DoctorTransfer
.
get_doctor_suggest_data_list
,
get_data_func
=
DoctorTransfer
V1
.
get_doctor_suggest_data_list
,
bulk_insert_chunk_size
=
100
,
bulk_insert_chunk_size
=
100
,
round_insert_chunk_size
=
5
,
round_insert_chunk_size
=
5
,
round_insert_period
=
2
,
round_insert_period
=
2
,
...
...
trans2es/utils/doctor_transfer.py
View file @
53e88b81
...
@@ -10,7 +10,7 @@ from libs.cache import redis_client
...
@@ -10,7 +10,7 @@ from libs.cache import redis_client
import
json
import
json
from
django.conf
import
settings
from
django.conf
import
settings
from
trans2es.commons.commons
import
get_tips_suggest_list
from
trans2es.commons.commons
import
get_tips_suggest_list
,
get_tips_suggest_list_v1
from
trans2es.commons.words_utils
import
QueryWordAttr
,
get_tips_word_type
from
trans2es.commons.words_utils
import
QueryWordAttr
,
get_tips_word_type
...
@@ -200,7 +200,7 @@ class DoctorTransferV1(object):
...
@@ -200,7 +200,7 @@ class DoctorTransferV1(object):
ret_list
.
append
(
item_dict
)
ret_list
.
append
(
item_dict
)
suggest_list
=
get_tips_suggest_list
(
instance
.
name
)
suggest_list
=
get_tips_suggest_list
_v1
(
instance
.
name
)
return
(
item_dict
,
suggest_list
)
return
(
item_dict
,
suggest_list
)
except
:
except
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment