koishi-plugin-virtual-pet
Version:
虚拟宠物插件,具有记忆功能,可以监听群聊并智能回复
61 lines • 1.55 kB
TypeScript
import { Context } from 'koishi';
import { Config } from '../index';
import { Message, AiService } from './ai';
export interface MemoryData {
groupId: string;
messages: Message[];
summary: string;
lastSummarized: number;
messageCount: number;
}
export declare class MemoryService {
private config;
private ctx;
private memories;
constructor(config: Config, ctx: Context);
/**
* 添加用户消息到记忆中
*/
addMessage(session: any): Promise<void>;
/**
* 添加机器人回复到记忆中
*/
addBotMessage(content: string, session: any): Promise<void>;
/**
* 获取最近的消息
*/
getRecentMessages(groupId?: string): Message[];
/**
* 检查是否需要总结记忆
*/
shouldSummarize(groupId?: string): boolean;
/**
* 总结记忆
*/
summarizeMemory(aiService: AiService, groupId?: string): Promise<void>;
/**
* 获取宠物状态
*/
getPetStatus(groupId?: string): Promise<string>;
/**
* 清除记忆
*/
clearMemory(groupId?: string): Promise<void>;
/**
* 获取或创建群组记忆
*/
private getOrCreateMemory;
/**
* 获取最近话题
*/
private getRecentTopics;
/**
* 获取记忆数据(用于持久化)
*/
getMemoryData(): Record<string, MemoryData>;
/**
* 恢复记忆数据(用于持久化)
*/
restoreMemoryData(data: Record<string, MemoryData>): void;
}
//# sourceMappingURL=memory.d.ts.map