• bitcoinBitcoin(BTC)$77,900.00-2.30%
  • ethereumEthereum(ETH)$2,227.26-3.31%
  • tetherTether(USDT)$1.00-0.05%
  • binancecoinBNB(BNB)$716.02-3.96%
  • rippleXRP(XRP)$1.24-3.44%
  • usd-coinUSDC(USDC)$1.00-0.03%
  • solanaSolana(SOL)$96.77-2.68%
  • tronTRON(TRX)$0.3483885.37%
  • Figure HelocFigure Heloc(FIGR_HELOC)$1.03-0.01%
  • HyperliquidHyperliquid(HYPE)$91.9817.45%
  • zcashZcash(ZEC)$1,267.492.58%
  • dogecoinDogecoin(DOGE)$0.075716-2.37%
  • moneroMonero(XMR)$604.603.61%
  • USDSUSDS(USDS)$1.00-0.24%
  • whitebitWhiteBIT Coin(WBT)$74.49-2.58%
  • leo-tokenLEO Token(LEO)$9.43-0.34%
  • chainlinkChainlink(LINK)$10.91-3.96%
  • cardanoCardano(ADA)$0.191374-2.72%
  • stellarStellar(XLM)$0.164164-1.90%
  • bitcoin-cashBitcoin Cash(BCH)$282.491.86%
  • nearNEAR Protocol(NEAR)$4.14-6.10%
  • RainRain(RAIN)$0.006563-1.71%
  • daiDai(DAI)$1.000.03%
  • Ethena USDeEthena USDe(USDE)$1.00-0.18%
  • litecoinLitecoin(LTC)$55.87-2.06%
  • uniswapUniswap(UNI)$6.69-3.89%
  • USD1USD1(USD1)$1.00-0.10%
  • CantonCanton(CC)$0.093901-2.28%
  • avalanche-2Avalanche(AVAX)$8.41-1.88%
  • suiSui(SUI)$0.88-2.51%
  • the-open-networkGram (prev. Toncoin)(GRAM)$1.17-3.55%
  • tether-goldTether Gold(XAUT)$3,986.92-1.05%
  • Global DollarGlobal Dollar(USDG)$1.000.03%
  • hedera-hashgraphHedera(HBAR)$0.070276-3.81%
  • paypal-usdPayPal USD(PYUSD)$1.00-0.18%
  • BittensorBittensor(TAO)$235.30-4.60%
  • shiba-inuShiba Inu(SHIB)$0.000005-3.92%
  • quant-networkQuant(QNT)$183.36-3.77%
  • Ripple USDRipple USD(RLUSD)$1.00-0.07%
  • crypto-com-chainCronos(CRO)$0.050818-3.39%
  • EthenaEthena(ENA)$0.183358-5.97%
  • Ondo US Dollar YieldOndo US Dollar Yield(USDY)$1.150.14%
  • okbOKB(OKB)$112.522.33%
  • Circle USYCCircle USYC(USYC)$1.140.01%
  • MemeCoreMemeCore(M)$1.01-3.94%
  • BitwayBitway(BTW)$1.49-15.08%
  • BlackRock USD Institutional Digital Liquidity FundBlackRock USD Institutional Digital Liquidity Fund(BUIDL)$1.000.00%
  • pepePepe(PEPE)$0.000005-1.47%
  • aaveAave(AAVE)$122.94-4.89%
  • Falcon USDFalcon USD(USDF)$0.99-0.32%
TradePoint.io
  • Main
  • AI & Technology
  • Stock Charts
  • Market & News
  • Business
  • Finance Tips
  • Trade Tube
  • Blog
  • Shop
No Result
View All Result
TradePoint.io
No Result
View All Result

Build a Reinforcement Learning Powered Agent that Learns to Retrieve Relevant Long-Term Memories for Accurate LLM Question Answering

April 27, 2026
in AI & Technology
Reading Time: 3 mins read
A A
Build a Reinforcement Learning Powered Agent that Learns to Retrieve Relevant Long-Term Memories for Accurate LLM Question Answering
ShareShareShareShareShare
@dataclass
class MemoryItem:
   memory_id: int
   topic: str
   entity: str
   slot: str
   value: str
   text: str


def build_memory_bank() -> List[MemoryItem]:
   entities = [
       {
           "entity": "Astra",
           "topic": "robotics",
           "facts": {
               "battery": "18 hours",
               "sensor": "LiDAR",
               "country": "Japan",
               "release_year": "2023",
               "specialty": "warehouse navigation",
           },
       },
       {
           "entity": "Orion",
           "topic": "astronomy",
           "facts": {
               "telescope": "infrared array",
               "country": "Chile",
               "discovery_year": "2019",
               "target": "exoplanet atmospheres",
               "aperture": "8 meters",
           },
       },
       {
           "entity": "Vita",
           "topic": "biomedicine",
           "facts": {
               "compound": "VX-17",
               "trial_phase": "Phase II",
               "country": "Canada",
               "target": "inflammatory markers",
               "delivery": "oral capsule",
           },
       },
       {
           "entity": "Nimbus",
           "topic": "climate",
           "facts": {
               "satellite": "polar orbiter",
               "country": "Norway",
               "launch_year": "2022",
               "instrument": "microwave radiometer",
               "mission": "sea ice monitoring",
           },
       },
       {
           "entity": "Atlas",
           "topic": "logistics",
           "facts": {
               "fleet_size": "240 trucks",
               "hub": "Muscat",
               "software": "predictive routing",
               "fuel_policy": "hybrid-first",
               "region": "GCC",
           },
       },
       {
           "entity": "Lumos",
           "topic": "materials",
           "facts": {
               "alloy": "Ti-6Al-4V",
               "process": "laser sintering",
               "density": "4.43 g/cm3",
               "country": "Germany",
               "use_case": "aerospace brackets",
           },
       },
       {
           "entity": "Cedar",
           "topic": "agriculture",
           "facts": {
               "crop": "wheat",
               "irrigation": "drip control",
               "country": "India",
               "yield_gain": "12 percent",
               "soil_sensor": "capacitive probe",
           },
       },
       {
           "entity": "Pulse",
           "topic": "healthcare",
           "facts": {
               "device": "ECG patch",
               "battery": "7 days",
               "country": "USA",
               "connectivity": "Bluetooth Low Energy",
               "use_case": "arrhythmia screening",
           },
       },
   ]


   phrasing_templates = [
       "{entity} in {topic} uses {value} for {slot}.",
       "The {slot} associated with {entity} is {value}.",
       "{entity} has {slot}: {value}.",
       "For {entity}, the recorded {slot} is {value}.",
       "Reference note: {entity} -> {slot} = {value}.",
   ]


   distractor_templates = [
       "{entity} was discussed in a briefing about cross-domain innovation.",
       "{entity} has been compared with several other projects in recent reports.",
       "A summary note mentions {entity} among notable initiatives.",
       "{entity} appears in a high-level update without technical details.",
       "Stakeholders reviewed {entity} in a strategic planning session.",
   ]


   memory_bank = []
   memory_id = 0


   for item in entities:
       entity = item["entity"]
       topic = item["topic"]
       for slot, value in item["facts"].items():
           for t in phrasing_templates:
               text = t.format(entity=entity, topic=topic, slot=slot, value=value)
               memory_bank.append(MemoryItem(
                   memory_id=memory_id,
                   topic=topic,
                   entity=entity,
                   slot=slot,
                   value=value,
                   text=text
               ))
               memory_id += 1


       for t in distractor_templates:
           text = t.format(entity=entity)
           memory_bank.append(MemoryItem(
               memory_id=memory_id,
               topic=topic,
               entity=entity,
               slot="distractor",
               value="n/a",
               text=text
           ))
           memory_id += 1


   extra_noise = [
       "General note: system maintenance occurred on Tuesday.",
       "A committee discussed budget timelines and operational readiness.",
       "The archive includes summaries of projects across multiple departments.",
       "No relevant technical value is stated in this memory.",
       "A status update mentioned partnerships and future opportunities.",
       "An unrelated note references shipping delays and staffing changes.",
       "Background memo: the team reviewed dashboards and reporting cadence.",
       "This memory contains no answer-bearing facts.",
   ]


   for text in extra_noise:
       memory_bank.append(MemoryItem(
           memory_id=memory_id,
           topic="noise",
           entity="none",
           slot="distractor",
           value="n/a",
           text=text
       ))
       memory_id += 1


   return memory_bank


memory_bank = build_memory_bank()
memory_texts = [m.text for m in memory_bank]
memory_embeddings = embed_texts(memory_texts)


def build_queries(memory_bank: List[MemoryItem]) -> List[Dict[str, Any]]:
   patterns = [
       "What is the {slot} of {entity}?",
       "Which {slot} does {entity} have?",
       "Tell me the {slot} for {entity}.",
       "Can you recall the {slot} associated with {entity}?",
       "What was recorded as the {slot} of {entity}?",
   ]
   queries = []
   qid = 0
   for m in memory_bank:
       if m.slot == "distractor":
           continue
       q = random.choice(patterns).format(slot=m.slot.replace("_", " "), entity=m.entity)
       queries.append({
           "query_id": qid,
           "query": q,
           "entity": m.entity,
           "slot": m.slot,
           "gold_value": m.value,
           "gold_memory_id": m.memory_id,
           "gold_text": m.text,
           "topic": m.topic,
       })
       qid += 1
   random.shuffle(queries)
   return queries


queries = build_queries(memory_bank)
query_texts = [q["query"] for q in queries]
query_embeddings = embed_texts(query_texts)

Credit: Source link

YOU MAY ALSO LIKE

Microsoft Offers Buyouts to 60,000 Employees

Meta Looks to Raise $95 Billion From Stock Sale to Fund AI Investments

ShareTweetSendSharePin

Related Posts

Microsoft Offers Buyouts to 60,000 Employees
AI & Technology

Microsoft Offers Buyouts to 60,000 Employees

October 30, 2026
Meta Looks to Raise  Billion From Stock Sale to Fund AI Investments
AI & Technology

Meta Looks to Raise $95 Billion From Stock Sale to Fund AI Investments

October 30, 2026
Anthropic to Deliver Menlo’s Biggest-Ever Return
AI & Technology

Anthropic to Deliver Menlo’s Biggest-Ever Return

October 30, 2026
Anthropic’s S-1 Reveals Financial War Chest
AI & Technology

Anthropic’s S-1 Reveals Financial War Chest

October 29, 2026
Next Post
Sam Altman’s sister loses lawyers in her sex-abuse lawsuit against OpenAI CEO

Sam Altman's sister loses lawyers in her sex-abuse lawsuit against OpenAI CEO

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Search

No Result
View All Result
What Does The Bell Icon Mean On Your CarPlay Screen?

What Does The Bell Icon Mean On Your CarPlay Screen?

October 25, 2026
Nanbeige Releases Nanbeige4.3-33B, a 33B Open Agentic Coding Model

Nanbeige Releases Nanbeige4.3-33B, a 33B Open Agentic Coding Model

October 25, 2026
ICE officers hit man running from them with SUV

ICE officers hit man running from them with SUV

October 27, 2026

About

Learn more

Our Services

Legal

Privacy Policy

Terms of Use

Bloggers

Learn more

Article Links

Contact

Advertise

Ask us anything

©2020- TradePoint.io - All rights reserved!

Tradepoint.io, being just a publishing and technology platform, is not a registered broker-dealer or investment adviser. So we do not provide investment advice. Rather, brokerage services are provided to clients of Tradepoint.io by independent SEC-registered broker-dealers and members of FINRA/SIPC. Every form of investing carries some risk and past performance is not a guarantee of future results. “Tradepoint.io“, “Instant Investing” and “My Trading Tools” are registered trademarks of Apperbuild, LLC.

This website is operated by Apperbuild, LLC. We have no link to any brokerage firm and we do not provide investment advice. Every information and resource we provide is solely for the education of our readers. © 2020 Apperbuild, LLC. All rights reserved.

No Result
View All Result
  • Main
  • AI & Technology
  • Stock Charts
  • Market & News
  • Business
  • Finance Tips
  • Trade Tube
  • Blog
  • Shop

© 2023 - TradePoint.io - All Rights Reserved!