-
Notifications
You must be signed in to change notification settings - Fork 2
Home
easyrequest edited this page Feb 17, 2014
·
31 revisions
Welcome to the easyrequest-docs wiki!
http://api.easyrequest.io/engine/create/:name
- POST
- appkey
- 类型: string
- 必选: true
- 描述: 注册时发送到邮箱的身份标识
- name
- 类型: string
- 必选: true
- 描述: 引擎名称,可由字母和数字组成. e.g: myengine1
- type
- 类型: string
- 必选: true
- 可选值: bool 或者 pref
- 描述: 引擎类型,bool类型为布尔值引擎,User不需要为Item打分;pref类型为分值型引擎,User需要对Item打分.
- JSON
-
http://api.easyrequest.io/engine/create/myengine1?appkey=yourappkey&type=pref
- 创建一个名称为"myengine1"、类型为"pref"的推荐引擎。
{"result": "ok"}
http://api.easyrequest.io/engine/list
- GET
- appkey
- 类型: string
- 必选: true
- 描述: 注册时发送到邮箱的身份标识
- JSON
http://api.easyrequest.io/engine/create/list?appkey=yourappkey
{"engines": [{"name": "eg1", "type": "bool", "version": "2", "records": 22},{"name": "eg2", "type": "pref", "version": "20", "records": 15828}]}
- version: 每做一次相似度计算就会升级一次version, 开发者可以根据version判断引擎有没有更新. BTW, 引擎更新是周期性的.
- records: 引擎现有的记录数
http://api.easyrequest.io/engine/post/:name
- POST
- appkey
- 类型: string
- 必选: true
- 描述: 注册时发送到邮箱的身份标识
- name
- 类型: string
- 必选: true
- 描述: 引擎名称,可由字母和数字组成. e.g: myengine1
- user
- 类型: string
- 必选: true
- 描述: 用户ID,只接收由数字组成的字符串. e.g: 1
- items
- 类型: string
- 必选: true
- 描述: 物品ID组成的字符串,由","分隔,物品ID只接收由数字组成的字符串,items分隔的数组最大长度为100. e.g: 101, 102, 103
- prefs
- 类型: string
- 必选: false
- 描述: 用户对物品打分组成的字符串,由","分隔,分值只接收由浮点数组成的字符串,prefs分隔的数组最大长度为100.该项需要与否取决于引擎的类型,如引擎类型是分值性(pref),则必须提供prefs参数,而且必须保证prefs和items的分隔数组长度一致,用户数组的排序和用户对物品打分数组的排序必须一致. e.g: 1.0, 1.02, 10.3
- JSON
-
http://api.easyrequest.io/engine/create/post/myengine1?appkey=yourappkey&user=1&items=101,102,103&prefs=1.0,1.02,10.3
- 这里表示为: 用户"1"对物品"101"的打分是"1.0",对物品"102"的打分是"1.02",对物品"103"的打分是"10.3".
- 如果用户重复提交相同的数据,则取最后一条做计算,也就是说可以改变用户对物品的打分,但我们不推荐这种做法.
{"result": "ok"}
http://api.easyrequest.io/recommender
- GET
- appkey
- 类型: string
- 必选: true
- 描述: 注册时发送到邮箱的身份标识
- engine
- 类型: string
- 必选: true
- 描述: 引擎名称,可由字母和数字组成. e.g: myengine1
- user
- 类型: string
- 必选: true
- 描述: 用户ID,只接收由数字组成的字符串. e.g: 1
- top
- 类型: string
- 必选: false
- 描述: 获取推荐的条数,默认为10条,最大为100条.
- JSON
http://api.easyrequest.io/recommender?appkey=yourappkey&engine=myengine1&user=1&top=3
{
"user": "1",
"recommenderItems": [
"107:2.4670174",
"106:2.359963",
"105:2.3046758"
]
}
- 这里表示在引擎myengine1中获得用户ID为1的物品推荐,指定条目数为3条.
- recommenderItems是一个数组,由"itemID:得分"组成,结果由得分从高到低排序.这里的物品推荐结果是107、106、105,得分是2.4670174、2.359963、2.3046758.
http://api.easyrequest.io/similarity
- GET
- appkey
- 类型: string
- 必选: true
- 描述: 注册时发送到邮箱的身份标识
- engine
- 类型: string
- 必选: true
- 描述: 引擎名称,可由字母和数字组成. e.g: myengine1
- item
- 类型: string
- 必选: true
- 描述: 物品ID,只接收由数字组成的字符串. e.g: 101
- top
- 类型: string
- 必选: false
- 描述: 获取推荐的条数,默认为10条,最大为100条.
- JSON
http://api.easyrequest.io/similarity?appkey=yourappkey&engine=myengine1&item=101&top=3
{
"item": 101,
"similarities": [
"105:0.2531794607639313",
"102:0.25103703141212463",
"106:0.1828850954771042"
]
}
- 这里表示在引擎myengine1中获得物品ID为101的物品相似推荐,指定条目数为3条.
- similarities是一个数组,由"itemID:得分"组成,结果由得分从高到低排序.这里的物品相似推荐结果是105、102、106,得分是0.2531794607639313、0.25103703141212463、0.1828850954771042.