API 参考
数据流
下图展示完整的请求过程,IMLib 层收到 IMKit 的请求后,会将最大上下文消息条数返回给用户。用户获取不多于该数量的历史消息,并将其转换成上下文消息,返回给 IMLib,交由 IMLib 继续请求服务。
底层 API 介绍
- Android
- iOS
requestRecommendationWithParams 方法
AI聊天助手底层依赖于融云SDK提供的 RongCoreClient#requestRecommendationWithParams 方法,开发者可直接使用此方法实现自定义AI聊天助手。
API 定义
Java
public abstract void requestRecommendationWithParams(
RequestRecommendationParams params,
IRongCoreCallback.RecommendationRequestCallback callback);
参数说明
RequestRecommendationParams
用于配置智能推荐的请求参数,包含以下主要字段:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| identifier | ConversationIdentifier | 是 | 会话标识符,包含会话类型(仅支持私聊)、会话 ID 和频道 ID |
| agentId | String | 是 | 智能体 ID,用于指定使用哪种 AI 模型生成推荐 |
| customInfo | Map<String, Object> | 否 | 自定义信息,可传入额外参数辅助 AI 生成更准确的推荐 |
示例:
Java
ConversationIdentifier identifier = new ConversationIdentifier(
Conversation.ConversationType.PRIVATE,
targetId,
channelId);
Map<String, Object> customInfo = new HashMap<>();
customInfo.put("user_name", "张三");
customInfo.put("target_name", "李四");
RequestRecommendationParams params = new RequestRecommendationParams(
identifier,
"deepseek", // 智能体 ID
customInfo
);
RecommendationRequestCallback
用于处理推荐请求的回调接口,包含以下主要方法:
| 方法 | 说明 |
|---|---|
| onReady | 在执行请求前准备阶段调用,用于获取历史消息上下文 |
| onSuccess | 推荐请求成功时调用,返回推荐结果列表 |
| onError | 推荐请求失败时调用,返回错误码 |
| onFinish | 请求结束后调用(无论成功或失败) |
回调接口详细说明
Java
abstract class RecommendationRequestCallback {
/**
* 请求服务前准备,用于提供历史消息上下文
*
* @param count 请求的消息数量
* @param callback 消息上下文回调
*/
public abstract void onReady(int count, RecommendationRequestProgressCallback callback);
/**
* 请求结束,成功或失败回调之后会立刻执行该方法
*
* @param requestId 请求 ID
*/
public abstract void onFinish(String requestId);
/**
* 成功回调
*
* @param recommendations 推荐列表
*/
public abstract void onSuccess(List<SuperAgentRecommendation> recommendations);
/**
* 失败回调
*
* @param errorCode 错误码
*/
public abstract void onError(IRongCoreEnum.CoreErrorCode errorCode);
}