简介
嗨,各位独立游戏开发者们!今天,我们将深入探讨一个令人兴奋的话题:使用 Redis 为您的 Unity 游戏创建记忆系统。该系统允许您的游戏存储和检索记忆,这对于 AI NPC、玩家进度跟踪,甚至根据过去事件创建动态叙事都非常有用。
我们正在建设什么
我们将实施两个主要部分:
处理MemoryManager记忆嵌入的创建和检索。
与RedisDBHandlerRedis 数据库交互来存储和获取这些记忆。
让我们分解每个组件,然后看看它们如何协同工作。
内存管理器
负责MemoryManager将文本提示转换为嵌入(文本的矢量表示)并管理这些嵌入的存储和检索。
完整脚本如下MemoryManager:
using System.Collections;
using System.Collections.Generic;
using UnityEngine.Networking;
using UnityEngine;
using System.Text;
using Unity.VisualScripting;
using System.Linq;
using JetBrains.Annotations;
using System;
public class MemoryManager : MonoBehaviour
{
private string url = "http://192.168.12.121:11434/api/embeddings";
private string modelName = "nomic-embed-text";
void Start()
{
// Ensure RedisMemoryManager is in the scene
if (RedisDBHa