Close Menu
  • Home
  • Opinion
  • Region
    • Africa
    • Asia
    • Europe
    • Middle East
    • North America
    • Oceania
    • South America
  • AI & Machine Learning
  • Robotics & Automation
  • Space & Deep Tech
  • Web3 & Digital Economies
  • Climate & Sustainability Tech
  • Biotech & Future Health
  • Mobility & Smart Cities
  • Global Tech Pulse
  • Cybersecurity & Digital Rights
  • Future of Work & Education
  • Trend Radar & Startup Watch
  • Creator Economy & Culture
What's Hot

Elgato’s Stream Deck Plus Lever Defined

April 1, 2026

Samsung Galaxy A57 5G and Galaxy A37 5G arrive in Australia with Enhanced AI Options and Professional-Grade Cameras

April 1, 2026

Flow into Capital raises $220M as first shut of Fund II

April 1, 2026
Facebook X (Twitter) Instagram LinkedIn RSS
NextTech NewsNextTech News
Facebook X (Twitter) Instagram LinkedIn RSS
  • Home
  • Africa
  • Asia
  • Europe
  • Middle East
  • North America
  • Oceania
  • South America
  • Opinion
Trending
  • Elgato’s Stream Deck Plus Lever Defined
  • Samsung Galaxy A57 5G and Galaxy A37 5G arrive in Australia with Enhanced AI Options and Professional-Grade Cameras
  • Flow into Capital raises $220M as first shut of Fund II
  • 33 banks elevate ₦3.37 trillion from Nigerians
  • Google’s reported screenless Fitbit band noticed on Stephen Curry
  • The best way to Construct a Manufacturing-Prepared Gemma 3 1B Instruct Technology AI Pipeline with Hugging Face Transformers, Chat Templates, and Colab Inference
  • CORSAIR unveils all-new MM Mousepad Household with first-ever Glass Gaming Mousepad
  • NYC expands public EV charging community
Wednesday, April 1
NextTech NewsNextTech News
Home - AI & Machine Learning - Methods to Construct and Evolve a Customized OpenAI Agent with A-Evolve Utilizing Benchmarks, Abilities, Reminiscence, and Workspace Mutations
AI & Machine Learning

Methods to Construct and Evolve a Customized OpenAI Agent with A-Evolve Utilizing Benchmarks, Abilities, Reminiscence, and Workspace Mutations

NextTechBy NextTechMarch 31, 2026No Comments11 Mins Read
Share Facebook Twitter Pinterest LinkedIn Tumblr Telegram Email Copy Link
Follow Us
Google News Flipboard
Methods to Construct and Evolve a Customized OpenAI Agent with A-Evolve Utilizing Benchmarks, Abilities, Reminiscence, and Workspace Mutations
Share
Facebook Twitter LinkedIn Pinterest Email


On this tutorial, we work straight with the A-Evolve framework in Colab and construct a whole evolutionary agent pipeline from the bottom up. We arrange the repository, configure an OpenAI-powered agent, outline a customized benchmark, and construct our personal evolution engine to see how A-Evolve really improves an agent via iterative workspace mutations. Via the code, we use the framework’s core abstractions for prompts, abilities, reminiscence, benchmarking, and evolution, which assist us perceive not simply tips on how to run A-Evolve, but in addition tips on how to lengthen it in a sensible, Colab-friendly approach.

import os
import sys
import json
import textwrap
import subprocess
import shutil
from pathlib import Path
from getpass import getpass
from collections import Counter, defaultdict


subprocess.check_call([sys.executable, "-m", "pip", "install", "-q", "openai>=1.30.0", "pyyaml>=6.0", "matplotlib>=3.8"])
REPO_DIR = Path("/content material/a-evolve")
if REPO_DIR.exists():
   shutil.rmtree(REPO_DIR)
subprocess.check_call(["git", "clone", "--depth", "1", "https://github.com/A-EVO-Lab/a-evolve.git", str(REPO_DIR)])
sys.path.insert(0, str(REPO_DIR))


if not os.environ.get("OPENAI_API_KEY"):
   os.environ["OPENAI_API_KEY"] = getpass("Enter your OpenAI API key: ").strip()


OPENAI_MODEL = "gpt-4o-mini"


import yaml
import matplotlib.pyplot as plt


import agent_evolve as ae
from agent_evolve.protocol.base_agent import BaseAgent
from agent_evolve.benchmarks.base import BenchmarkAdapter
from agent_evolve.engine.base import EvolutionEngine
from agent_evolve.sorts import Process, Trajectory, Suggestions, StepResult
from agent_evolve.contract.workspace import AgentWorkspace
from openai import OpenAI


consumer = OpenAI(api_key=os.environ["OPENAI_API_KEY"])


WORKSPACE_ROOT = Path("/content material/a_evolve_demo_workspace")
if WORKSPACE_ROOT.exists():
   shutil.rmtree(WORKSPACE_ROOT)


(WORKSPACE_ROOT / "prompts").mkdir(mother and father=True, exist_ok=True)
(WORKSPACE_ROOT / "abilities").mkdir(mother and father=True, exist_ok=True)
(WORKSPACE_ROOT / "reminiscence").mkdir(mother and father=True, exist_ok=True)
(WORKSPACE_ROOT / "instruments").mkdir(mother and father=True, exist_ok=True)


manifest = banana
with open(WORKSPACE_ROOT / "manifest.yaml", "w") as f:
   yaml.dump(manifest, f, sort_keys=False)


initial_system_prompt = textwrap.dedent("""
You're a exact text-transformation agent.


Remedy the duty precisely.
Be concise.
Return solely the ultimate reply with no clarification until the duty explicitly asks for JSON.
""").strip()


(WORKSPACE_ROOT / "prompts" / "system.md").write_text(initial_system_prompt)

We put together the total Colab setting wanted to run the tutorial from begin to end. We set up the required packages, clone the A-Evolve repository, load the framework imports, and securely gather the OpenAI API key for mannequin entry. We additionally outline the workspace construction and initialize the manifest and system immediate, offering our evolving agent with a legitimate start line throughout the A-Evolve framework.

def build_dataset():
   prepare = [
       zebra"
       ,
       
           "id": "holdout-03",
           "rule": "pipe_unique_sorted_lower",
           "input": "Tokens: Mango, apple, mango, Berry, berry",
           "answer": "apple,
       banana,
       lion,
       berry,
       zebra"
       ,
       berry,
       {
           "id": "train-08",
           "rule": "vowel_parity",
           "input": "Word: education",
           "answer": "ODD"
       },
   ]


   holdout = [
       {
           "id": "holdout-01",
           "rule": "json_sum",
           "input": "Numbers: 100, 1, 9",
           "answer": '{"sum":110}'
       },
       {
           "id": "holdout-02",
           "rule": "acronym_upper",
           "input": "Create the acronym from: artificial general intelligence",
           "answer": "AGI"
       },
       berry,
       {
           "id": "holdout-04",
           "rule": "vowel_parity",
           "input": "Word: aeroplane",
           "answer": "ODD"
       },
   ]
   return prepare, holdout


TRAIN_DATA, HOLDOUT_DATA = build_dataset()


def normalize_text(x: str) -> str:
   return x.strip().substitute(" ", "")


class MiniTextBenchmark(BenchmarkAdapter):
   def __init__(self):
       self.prepare = TRAIN_DATA
       self.holdout = HOLDOUT_DATA


   def get_tasks(self, cut up: str = "prepare", restrict: int = 10):
       information = self.prepare if cut up == "prepare" else self.holdout
       duties = []
       for row in information[:limit]:
           duties.append(
               Process(
                   id=row["id"],
                   enter=row["input"],
                   metadata={
                       "rule": row["rule"],
                       "reply": row["answer"]
                   }
               )
           )
       return duties


   def consider(self, job: Process, trajectory: Trajectory):
       pred = trajectory.output.strip()
       gold = job.metadata["answer"].strip()
       success = normalize_text(pred) == normalize_text(gold)
       element = {
           "rule": job.metadata["rule"],
           "gold": gold,
           "pred": pred,
           "enter": job.enter,
           "success": success
       }
       rating = 1.0 if success else 0.0
       return Suggestions(
           success=success,
           rating=rating,
           element=json.dumps(element, ensure_ascii=False),
           uncooked=element
       )


SKILL_ROUTING = {
   "json_sum": ["json", "sum"],
   "acronym_upper": ["acronym", "uppercase"],
   "pipe_unique_sorted_lower": ["unique", "sorted", "lowercase", "pipe"],
   "vowel_parity": ["vowel", "odd", "even", "parity"]
}

We outline the coaching and holdout datasets used to measure the agent earlier than and after evolution. We construct a customized benchmark class that packages every instance into A-Evolve duties and evaluates predictions in opposition to precise anticipated outputs. We additionally arrange the routing hints for abilities, which prepares the system to attach completely different job sorts with the appropriate behavioral patterns later within the workflow.

class ColabAEResolverAgent(BaseAgent):
   def __init__(self, workspace_dir: str | Path, mannequin: str = OPENAI_MODEL):
       self.mannequin = mannequin
       tremendous().__init__(workspace_dir)


   def _pick_relevant_skills(self, job: Process):
       rule = job.metadata.get("rule", "")
       chosen = []
       for ability in self.abilities:
           hay = f"{ability.identify} {ability.description}".decrease()
           if rule == "json_sum" and ("json" in hay or "sum" in hay):
               chosen.append(ability)
           elif rule == "acronym_upper" and ("acronym" in hay or "uppercase" in hay):
               chosen.append(ability)
           elif rule == "pipe_unique_sorted_lower" and any(okay in hay for okay in ["unique", "sorted", "lowercase", "pipe"]):
               chosen.append(ability)
           elif rule == "vowel_parity" and any(okay in hay for okay in ["vowel", "odd", "even", "parity"]):
               chosen.append(ability)
       return chosen[:3]


   def clear up(self, job: Process) -> Trajectory:
       relevant_skills = self._pick_relevant_skills(job)
       relevant_skill_texts = []
       for s in relevant_skills:
           relevant_skill_texts.append(self.get_skill_content(s.identify))


       memory_text = "n".be part of(
           [f"- {m.get('content', '')}" for m in self.memories[-8:]]
       ).strip()


       skill_block = "nn".be part of(relevant_skill_texts).strip()
       if not skill_block:
           skill_block = "(no abilities loaded but)"


       if not memory_text:
           memory_text = "(no reminiscence but)"


       user_prompt = textwrap.dedent(f"""
       TASK RULE: {job.metadata.get("rule")}
       TASK INPUT:
       {job.enter}


       ACTIVE SYSTEM PROMPT:
       {self.system_prompt}


       RELEVANT SKILLS:
       {skill_block}


       RECENT MEMORIES:
       {memory_text}


       Remedy the duty precisely.
       Return solely the ultimate reply.
       """).strip()


       response = consumer.chat.completions.create(
           mannequin=self.mannequin,
           temperature=0,
           messages=[
               {"role": "system", "content": "You are an exact text-transformation agent."},
               {"role": "user", "content": user_prompt}
           ]
       )


       output = (response.decisions[0].message.content material or "").strip()


       self.bear in mind(
           content material=f"Process {job.id} below rule {job.metadata.get('rule')} produced output: {output}",
           class="episodic"
       )


       return Trajectory(
           task_id=job.id,
           output=output,
           steps=[
               {
                   "rule": task.metadata.get("rule"),
                   "used_skills": [s.name for s in relevant_skills],
                   "system_prompt_chars": len(self.system_prompt),
                   "memory_items_seen": len(self.reminiscences)
               }
           ]
       )


SKILL_TEMPLATES = {
   "json_sum": textwrap.dedent("""
       ---
       identify: json-sum-exact
       description: Add all integers and output strict compact JSON with the only key sum.
       ---
       # JSON Sum Precise


       Process:
       1. Extract all integers from the duty enter.
       2. Add them.
       3. Return precisely one compact JSON object on this format:
          {"sum":NUMBER}
       4. Don't add areas, explanations, markdown, or additional keys.
   """).strip(),


   "acronym_upper": textwrap.dedent("""
       ---
       identify: acronym-upper-exact
       description: Construct an uppercase acronym by taking the primary letter of every phrase.
       ---
       # Acronym Higher Precise


       Process:
       1. Establish the phrase after the colon.
       2. Take the primary letter of every phrase.
       3. Convert each letter to uppercase.
       4. Return solely the ultimate acronym, with no punctuation or clarification.
   """).strip(),


   "pipe_unique_sorted_lower": textwrap.dedent("""
       ---
       identify: pipe-unique-sorted-lower
       description: Normalize tokens to lowercase, deduplicate them, type ascending, and be part of them with pipes.
       ---
       # Pipe Distinctive Sorted Decrease


       Process:
       1. Learn the token listing after the colon.
       2. Cut up by commas.
       3. Trim areas and lowercase each token.
       4. Take away duplicates.
       5. Kind alphabetically ascending.
       6. Be part of with "|" and return solely the ultimate string.
   """).strip(),


   "vowel_parity": textwrap.dedent("""
       ---
       identify: vowel-parity-exact
       description: Rely vowels within the phrase and output ODD or EVEN solely.
       ---
       # Vowel Parity Precise


       Process:
       1. Learn the goal phrase after the colon.
       2. Rely vowels utilizing a, e, i, o, u.
       3. If the depend is odd, output ODD.
       4. If the depend is even, output EVEN.
       5. Return solely ODD or EVEN with no additional textual content.
   """).strip(),
}


PROMPT_APPENDIX = textwrap.dedent("""
## STRICT OUTPUT CONTRACT
- Output solely the ultimate reply.
- By no means clarify your reasoning.
- If a job expects JSON, return compact JSON with precise keys solely.
- When a related ability exists, observe it actually.
- Precise format is extra necessary than being conversational.
""").strip()

We implement the customized A-Evolve agent that reads the lively immediate, abilities, and reminiscence from the workspace and makes use of OpenAI to resolve every job. We design the agent so it selects related abilities, injects current reminiscence, and returns trajectories within the construction anticipated by the framework. We additionally outline the ability templates and the strict output contract, which function the principle components that the evolution engine can add to enhance efficiency over time.

class ColabMutationEngine(EvolutionEngine):
   def __init__(self):
       self.cycle_count = 0


   def step(self, workspace: AgentWorkspace, observations, historical past, trial):
       self.cycle_count += 1


       failed_by_rule = defaultdict(listing)
       for obs in observations:
           if not obs.suggestions.success:
               failed_by_rule[obs.task.metadata["rule"]].append({
                   "task_id": obs.job.id,
                   "enter": obs.job.enter,
                   "gold": obs.job.metadata["answer"],
                   "pred": obs.trajectory.output
               })


       mutated = False
       summaries = []


       current_prompt = workspace.read_prompt()
       if "STRICT OUTPUT CONTRACT" not in current_prompt:
           workspace.write_prompt(current_prompt.rstrip() + "nn" + PROMPT_APPENDIX + "n")
           mutated = True
           summaries.append("immediate hardened")


       existing_skill_names = {s.identify for s in workspace.list_skills()}


       needed_rule_to_skill_name = {
           "json_sum": "json-sum-exact",
           "acronym_upper": "acronym-upper-exact",
           "pipe_unique_sorted_lower": "pipe-unique-sorted-lower",
           "vowel_parity": "vowel-parity-exact",
       }


       for rule, fails in failed_by_rule.gadgets():
           skill_name = needed_rule_to_skill_name[rule]
           if skill_name not in existing_skill_names:
               workspace.write_skill(skill_name, SKILL_TEMPLATES[rule])
               mutated = True
               summaries.append(f"added ability {skill_name}")


           workspace.add_memory({
               "content material": f"Cycle {self.cycle_count}: rule={rule} failed {len(fails)} time(s). Frequent failure sample: output formatting or process mismatch. Gold examples should be adopted precisely.",
               "rule": rule,
               "examples": fails[:2]
           }, class="episodic")


       if not failed_by_rule:
           workspace.add_memory({
               "content material": f"Cycle {self.cycle_count}: all present coaching duties succeeded. Protect precise formatting conduct."
           }, class="episodic")


       abstract = " | ".be part of(summaries) if summaries else "no mutation wanted"
       return StepResult(
           mutated=mutated,
           abstract=abstract,
           metadata={
               "failed_rules": listing(failed_by_rule.keys()),
               "num_failed_rules": len(failed_by_rule),
               "cycle": self.cycle_count
           }
       )


def evaluate_split(agent, benchmark, cut up="prepare"):
   duties = benchmark.get_tasks(cut up=cut up, restrict=100)
   rows = []
   whole = 0
   right = 0
   for job in duties:
       traj = agent.clear up(job)
       fb = benchmark.consider(job, traj)
       rows.append({
           "task_id": job.id,
           "rule": job.metadata["rule"],
           "enter": job.enter,
           "gold": job.metadata["answer"],
           "pred": traj.output,
           "rating": fb.rating,
           "success": fb.success
       })
       whole += 1
       right += int(fb.success)
   rating = right / max(whole, 1)
   return rating, rows


def print_table(rows, title, max_rows=20):
   print("n" + "=" * 110)
   print(title)
   print("=" * 110)
   proven = rows[:max_rows]
   for r in proven:
       print(f"[{r['task_id']}] rule={r['rule']}")
       print(f"  enter : {r['input']}")
       print(f"  gold  : {r['gold']}")
       print(f"  pred  : {r['pred']}")
       print(f"  rating : {r['score']}  success={r['success']}")
       print("-" * 110)


def show_workspace(root: Path):
   print("n" + "=" * 110)
   print("EVOLVED WORKSPACE SNAPSHOT")
   print("=" * 110)
   for path in sorted(root.rglob("*")):
       rel = path.relative_to(root)
       if path.is_dir():
           print(f"[DIR ] {rel}/")
       else:
           print(f"[FILE] {rel}")


def show_skill_contents(root: Path):
   skill_files = sorted((root / "abilities").glob("*/SKILL.md"))
   print("n" + "=" * 110)
   print("SKILL FILES")
   print("=" * 110)
   if not skill_files:
       print("No ability recordsdata but.")
   for sf in skill_files:
       print(f"n--- {sf.mum or dad.identify}/SKILL.md ---")
       print(sf.read_text())

We construct a customized evolution engine that inspects failures and decides tips on how to mutate the workspace. We use it to harden the immediate, add lacking abilities, and retailer episodic reminiscence in order that the agent regularly learns higher formatting and task-specific conduct throughout cycles. We additionally outline analysis and reporting utilities that assist us rating the agent, examine predictions, and examine the advanced workspace clearly.

benchmark = MiniTextBenchmark()
agent = ColabAEResolverAgent(WORKSPACE_ROOT, mannequin=OPENAI_MODEL)
engine = ColabMutationEngine()


baseline_train_score, baseline_train_rows = evaluate_split(agent, benchmark, cut up="prepare")
baseline_holdout_score, baseline_holdout_rows = evaluate_split(agent, benchmark, cut up="holdout")


print(f"Baseline prepare rating   : {baseline_train_score:.3f}")
print(f"Baseline holdout rating : {baseline_holdout_score:.3f}")


print_table(baseline_train_rows, "BASELINE TRAIN RESULTS")
print_table(baseline_holdout_rows, "BASELINE HOLDOUT RESULTS")


config = ae.EvolveConfig(
   batch_size=8,
   max_cycles=4,
   egl_window=2
)


evolver = ae.Evolver(
   agent=agent,
   benchmark=benchmark,
   config=config,
   engine=engine
)


outcome = evolver.run(cycles=4)


print("n" + "=" * 110)
print("A-EVOLVE RUN SUMMARY")
print("=" * 110)
print(f"Cycles accomplished : {outcome.cycles_completed}")
print(f"Remaining prepare rating: {outcome.final_score:.3f}")
print(f"Rating historical past    : {outcome.score_history}")
print(f"Converged        : {outcome.converged}")


agent.reload_from_fs()
final_train_score, final_train_rows = evaluate_split(agent, benchmark, cut up="prepare")
final_holdout_score, final_holdout_rows = evaluate_split(agent, benchmark, cut up="holdout")


print(f"nFinal prepare rating   : {final_train_score:.3f}")
print(f"Remaining holdout rating : {final_holdout_score:.3f}")


print_table(final_train_rows, "FINAL TRAIN RESULTS")
print_table(final_holdout_rows, "FINAL HOLDOUT RESULTS")


show_workspace(WORKSPACE_ROOT)
show_skill_contents(WORKSPACE_ROOT)


print("n" + "=" * 110)
print("FINAL SYSTEM PROMPT")
print("=" * 110)
print((WORKSPACE_ROOT / "prompts" / "system.md").read_text())


episodic_path = WORKSPACE_ROOT / "reminiscence" / "episodic.jsonl"
if episodic_path.exists():
   print("n" + "=" * 110)
   print("RECENT EPISODIC MEMORY")
   print("=" * 110)
   traces = episodic_path.read_text().strip().splitlines()
   for line in traces[-10:]:
       print(line)


plt.determine(figsize=(8, 4))
plt.plot(vary(1, len(outcome.score_history) + 1), outcome.score_history, marker="o")
plt.xlabel("Evolution cycle")
plt.ylabel("Prepare rating")
plt.title("A-Evolve rating historical past")
plt.grid(True)
plt.present()


print("n" + "=" * 110)
print("COMPARISON")
print("=" * 110)
print(f"Prepare   : {baseline_train_score:.3f} -> {final_train_score:.3f}")
print(f"Holdout : {baseline_holdout_score:.3f} -> {final_holdout_score:.3f}")


improved_rules = []
for earlier than, after in zip(sorted(baseline_train_rows, key=lambda x: x["task_id"]), sorted(final_train_rows, key=lambda x: x["task_id"])):
   if (not earlier than["success"]) and after["success"]:
       improved_rules.append(after["rule"])


print(f"Improved prepare instances by rule: {dict(Counter(improved_rules))}")


print("nDone. This pocket book used the actual A-Evolve framework and demonstrated:")
print("1) a legitimate agent workspace")
print("2) a BaseAgent subclass")
print("3) a BenchmarkAdapter subclass")
print("4) an EvolutionEngine subclass")
print("5) immediate / ability / reminiscence mutations throughout A-Evolve cycles")

We put all the things collectively and run the total A-Evolve loop from baseline analysis to post-evolution evaluation. We measure the agent earlier than coaching, execute a number of evolution cycles, reload the workspace, after which examine the ultimate prepare and holdout efficiency to see what improves. We additionally examine the advanced immediate, abilities, reminiscence, and rating historical past, which lets us clearly observe how the framework transforms the agent step-by-step.

In conclusion, we efficiently constructed and ran a full A-Evolve workflow reasonably than simply inspecting the repository at a floor degree. We created a legitimate workspace, plugged in a customized agent, benchmarked it on structured duties, after which advanced its conduct by modifying prompts, including abilities, and storing reminiscence throughout cycles. Additionally, we noticed how A-Evolve’s design allows us to deal with agent enchancment as a repeatable engineering course of, during which we are able to measure baseline efficiency, apply managed mutations, and observe how the system turns into extra correct over time.


Try the Full Coding Pocket book right here. Additionally, be at liberty to observe us on Twitter and don’t neglect to affix our 120k+ ML SubReddit and Subscribe to our Publication. Wait! are you on telegram? now you may be part of us on telegram as properly.


Elevate your perspective with NextTech Information, the place innovation meets perception.
Uncover the newest breakthroughs, get unique updates, and join with a worldwide community of future-focused thinkers.
Unlock tomorrow’s developments at the moment: learn extra, subscribe to our e-newsletter, and grow to be a part of the NextTech group at NextTech-news.com

Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
NextTech
  • Website

Related Posts

The best way to Construct a Manufacturing-Prepared Gemma 3 1B Instruct Technology AI Pipeline with Hugging Face Transformers, Chat Templates, and Colab Inference

April 1, 2026

Google AI Releases Veo 3.1 Lite: Giving Builders Low Value Excessive Velocity Video Era by way of The Gemini API

April 1, 2026

Hugging Face Releases TRL v1.0: A Unified Put up-Coaching Stack for SFT, Reward Modeling, DPO, and GRPO Workflows

April 1, 2026
Add A Comment
Leave A Reply Cancel Reply

Economy News

Elgato’s Stream Deck Plus Lever Defined

By NextTechApril 1, 2026

Stream Deck units have grow to be lifesavers for all of you content material creators…

Samsung Galaxy A57 5G and Galaxy A37 5G arrive in Australia with Enhanced AI Options and Professional-Grade Cameras

April 1, 2026

Flow into Capital raises $220M as first shut of Fund II

April 1, 2026
Top Trending

Elgato’s Stream Deck Plus Lever Defined

By NextTechApril 1, 2026

Stream Deck units have grow to be lifesavers for all of you…

Samsung Galaxy A57 5G and Galaxy A37 5G arrive in Australia with Enhanced AI Options and Professional-Grade Cameras

By NextTechApril 1, 2026

Samsung has simply introduced the Galaxy A57 5G and Galaxy A37 5G,…

Flow into Capital raises $220M as first shut of Fund II

By NextTechApril 1, 2026

Flow into Capital, a Singapore primarily based round economic system funding agency,…

Subscribe to News

Get the latest sports news from NewsSite about world, sports and politics.

NEXTTECH-LOGO
Facebook X (Twitter) Instagram YouTube

AI & Machine Learning

Robotics & Automation

Space & Deep Tech

Web3 & Digital Economies

Climate & Sustainability Tech

Biotech & Future Health

Mobility & Smart Cities

Global Tech Pulse

Cybersecurity & Digital Rights

Future of Work & Education

Creator Economy & Culture

Trend Radar & Startup Watch

News By Region

Africa

Asia

Europe

Middle East

North America

Oceania

South America

2025 © NextTech-News. All Rights Reserved
  • About Us
  • Contact Us
  • Privacy Policy
  • Terms Of Service
  • Advertise With Us
  • Write For Us
  • Submit Article & Press Release

Type above and press Enter to search. Press Esc to cancel.

Subscribe For Latest Updates

Sign up to best of Tech news, informed analysis and opinions on what matters to you.

Invalid email address
 We respect your inbox and never send spam. You can unsubscribe from our newsletter at any time.     
Thanks for subscribing!