AXHUB DEEP READ · 01
Running an AI content factory
on a 1GB server
The translation and topic classification of the overseas articles on this site are done by AI. Yet the server the site runs on is a single virtual machine with 1GB of memory, one of the smallest tiers there is. This piece is a record of the architecture we chose to run an AI content pipeline within that constraint, and of the things that broke while we built it. The figures are the actual configuration values, and the failures are told without embellishment.
1The problem — AI is heavy, the server is small
Even the small model we use for translation takes up 7GB once loaded into memory.
The model for classification and summarization is 25GB.
The server has 1GB. From the start, it was a matchup the numbers couldn't win.
"Then just use an API" looks like the right answer, and in many cases it is.
But for a service still in its experimental stage, the monthly API bill itself becomes a burden. Because the cost scales with the number of attempts rather than with traffic, the urge to save money ends up reducing how much you experiment.
We took a third path.
2The architecture — separate the factory from the store
The conclusion first. Not a single line of AI runs on the server.
A Mac sitting at home is the factory. Collection, translation, classification, summarization — all of it finishes here, with free open models.
The server is the store. It receives the finished content and only displays it.
This separation gives us three things.
- No need to scale up the server. It stays at 1GB.
- No model usage fees. We run open models on our own computer.
- Experiment and service are decoupled. Even if the factory is down for a day, the store stays open for business.
It isn't a new invention. Work that doesn't need real-time responses — content processing, reports, summaries — has long been handled this way, in batches. There was no reason AI should be different.
3What you need
- One Mac you already have. With local models, the more memory, the larger the model you can load. We load a classification model as large as 25GB. If you have less memory, just start with a smaller model.
- Two open models, at zero cost. A small translation-only model (1.8B) and a mid-size model that follows instructions well (12B).
- One 1GB virtual server. The one you already had.
- A path from factory to store. A single transfer API that sends only the published items over HTTPS (token-authenticated).
Beyond the server bill, there was no additional cost. Just about the electricity.
4The pipeline — six steps
- Collect. Pull in new pieces from domestic and overseas sources and stack them as "drafts." This step is not publication.
- Translate. The 1.8B translation-only model. It attaches English to Korean articles, and Korean to English ones.
- Classify. The 12B model tags each article with operations-oriented topic labels (adoption, governance, organizational change, tools…). The topic clusters on the home page are built from these labels.
- Topic digest. Gather what's being talked about today in overseas developer communities and summarize each in a line.
- Curation. A person scans the draft list and picks only what to publish. More on this below.
- Transfer. Only the published items are sent to the server. The server just receives and stores; it creates nothing.
There are constraints inside the factory too. Loading the translation model and the classification model at the same time is too much even for the Mac. So when translation finishes, we unload that model and load the classification model. Deciding that order was itself part of the design.
5What broke
That's the end of the architecture talk, and from here is probably the more useful part.
6Where the human stays
The classification model's labels are hints, not filters. A person presses the publish button. We deliberately did not build a bulk-publish feature.
We learned why early on. Academic papers and technical articles for developers came in wearing the plausible label "tools," but they weren't what our readers wanted. A local fire-drill article once got classified as an "adoption case."
So the machine attaches labels and a person scans the list and filters. A few minutes a day is enough.
It's our own home version of the "AI handles it, humans check only the exceptions" line we've repeated across the card series.
7If you want to try it
We recommend not building it all at once. This is the order we actually followed.
- Collection first, without AI. Just as far as new pieces from your sources piling up in the draft bin. Be sure to set a per-source cap here.
- One model, one job. Attach just one — translation or summarization — and confirm the result appears on the drafts.
- Add classification. Be prepared to be disappointed by label accuracy, and use it only as a hint.
- Decide the human-check point. Where you look with your own eyes and publish. It's the most important decision of the six steps.
- Build the transfer. Published items only, to the server. The server only receives.
It took us 2–3 weeks, running it alongside other work. Doing it in one push would be shorter, but going step by step, checking the real thing (drafts, translations, labels) with our own eyes at each stage, turned out faster in the end.
8The gist
The site this piece sits on is the product. The overseas-article translations, the topic clusters, and today's talking points on the home page all came through this pipeline. The server is still 1GB.
Changing the architecture instead of adding hardware. That's the kind of thing our AX turned out to be.
To try it by hand → AXHub lectures, 5 parts — 30-minute hands-on each · Deep Read contents
This piece is transcribed from AXHub's operating log (June 2026 work log); the specs, model sizes, and counts are actual values. The pipeline still runs on the same architecture. Specific model and tool names can change, so the text describes them by size and role.