代码拉取完成,页面将自动刷新
/**
* 模型存储类
* 负责AI模型的保存和加载
*/
class ModelStorage {
/**
* 初始化存储系统
*/
constructor() {
this.storageKey = 'gameAIModel'; // localStorage的键名前缀
}
/**
* 保存AI模型
* @param {GameAI} ai - AI实例
* @param {string} type - 保存类型('latest'或'best')
* @returns {Promise<boolean>} 保存是否成功
*/
async saveModel(ai, type = 'latest') {
try {
// 准备要保存的数据
const aiData = {
network: ai.network.toJSON(),
epsilon: ai.epsilon,
bestScore: ai.bestScore,
trainingCount: ai.trainingCount
};
// 保存到localStorage
localStorage.setItem(`${this.storageKey}_${type}`, JSON.stringify(aiData));
console.log(`模型已保存: ${type}`);
return true;
} catch (error) {
console.error('保存模型失败:', error);
throw error;
}
}
/**
* 加载AI模型
* @param {string} type - 加载类型('latest'或'best')
* @returns {Promise<Object>} 加载的模型数据
*/
async loadModel(type = 'latest') {
try {
// 从localStorage读取数据
const data = localStorage.getItem(`${this.storageKey}_${type}`);
if (!data) {
throw new Error('没有找到保存的模型');
}
// 解析并返回数据
const aiData = JSON.parse(data);
console.log(`模型已加载: ${type}`);
return aiData;
} catch (error) {
console.error('加载模型失败:', error);
throw error;
}
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。