Skip to content

2025

Vibe Coding - A New Era of AI-Accelerated Software Development

Software development is undergoing a major transformation. With the rise of large language models (LLMs), developers are adopting a new methodology called Vibe Coding — a conversational, iterative process where AI plays a central role in moving ideas into working software efficiently. At its core, Vibe Coding emphasizes logical planning, leveraging AI frameworks, continuous debugging, checkpointing, and providing clear context to AI tools. It focuses on speed, experimentation, and AI-human collaboration.

Vibe Coding, or vibecoding, is a modern approach to software development that uses natural language prompts to instruct AI systems to generate code. The term was coined by computer scientist Andrej Karpathy in February 2025 and quickly gained widespread adoption across the tech industry. Vibe Coding aims to minimize manual coding by relying heavily on AI coding assistants like ChatGPT, Claude, Copilot, and Cursor.

In practice, users describe the desired functionality in plain language. AI interprets these prompts and generates code automatically. Users test the output, troubleshoot by interacting with the AI, and iterate until the software operates as expected. This highly conversational approach centers around collaboration with AI, with Karpathy summarizing the experience as: "I just see things, say things, run things, and copy-paste things, and it mostly works."

Several key principles define the Vibe Coding mindset. It prioritizes natural language input over manual code writing, trusts the AI to handle the majority of development work, and favors rapid prototyping over immediate code perfection. The goal is to build a working version first, refine only when necessary, and accept that some imperfection is tolerable — particularly for non-critical or experimental projects. Vibe Coding also lowers the barrier to entry, making it possible for even beginners to create functional software.

Typical use cases for Vibe Coding include rapid prototyping of new ideas, building small personal productivity tools, learning new frameworks or programming languages with AI guidance, and accelerating minimum viable product (MVP) development for startups and small teams. However, it also carries limitations. AI-generated code may be messy or inefficient. Debugging can be more difficult when the user doesn't deeply understand the AI-written code. Vibe Coding is not recommended for production-grade systems that require high reliability, security, and maintainability. Overreliance on AI outputs without human review can introduce significant risks.

Compared to traditional AI-assisted programming, Vibe Coding involves deeper trust in the AI system. In Vibe Coding, users allow the AI to generate most or all of the code, perform minimal code review, and focus primarily on achieving working results quickly. In traditional AI-assisted coding, the human developer remains in control, uses AI mainly as a helper, conducts thorough reviews, and maintains responsibility for the final product. While Vibe Coding suits fast-moving projects and non-critical applications, traditional coding remains essential for production systems.

To succeed with Vibe Coding, developers need several core skills. Logical planning is crucial — clearly structuring what needs to be built before starting prompts. Awareness of AI-friendly frameworks like Rails, Django, and Next.js enables faster development. Frequent checkpointing using Git or cloud snapshots ensures stability and reduces the risk of irreversible mistakes. Developers must maintain discipline in debugging, often resetting to clean baselines to prevent technical debt. Context management is equally critical: providing the AI with full project context, documentation, and environment details significantly improves code generation accuracy.

Selecting the right tools also plays a major role. Cursor offers a deep AI integration experience inside a professional, local environment ideal for more serious projects. Windsurf is optimized for rapid prototyping and fast-paced prompting. Replit provides instant online coding, strong multiplayer capabilities, and is perfect for collaborative experiments and demos.

Tom Blomfield, a partner at Y Combinator, shares advanced Vibe Coding techniques that emphasize planning, testing, and modularity. Developers are encouraged to plan project structures in markdown before coding, prioritize integration tests over unit tests, and use AI across the stack for tasks like hosting and asset generation. When encountering problems, switching between LLMs (such as Gemini, Claude, or Sonnet) can be highly effective. Voice input and screenshots can accelerate communication with AI, and keeping the code modular — with small, clean files — supports easier collaboration between humans and AI. Regular refactoring is necessary to maintain code quality even as prototypes grow.

The Vibe Coding workflow is straightforward: describe the intended functionality clearly to the AI, generate the implementation, test the output, debug collaboratively if needed, save progress, and repeat. This iterative loop enables developers to build complex applications faster without being constrained by traditional coding bottlenecks.

Vibe Coding is reshaping the software development landscape by making building software faster, more accessible, and more experimental. It enables quick exploration of ideas at low cost but demands careful oversight to ensure that quality, security, and maintainability are not compromised. While Vibe Coding is highly effective for rapid prototyping, side projects, learning exercises, and early-stage MVPs, traditional coding practices remain indispensable for mission-critical and enterprise-grade applications. By mastering both the advantages and limitations of Vibe Coding, developers can unlock new levels of productivity and innovation in modern software development.

Vibe Coding - AI加速軟體開發的新時代

軟體開發正在經歷一場重大轉變。隨著大型語言模型(LLMs)的興起,開發者正在採用一種名為 Vibe Coding 的新方法論——這是一種以對話和迭代為核心,讓AI在將想法轉化為可運作軟體過程中扮演關鍵角色的開發方式。本質上,Vibe Coding 強調邏輯規劃、活用AI框架、持續除錯、建立檢查點,以及向AI工具提供明確上下文。它聚焦於速度、實驗性與AI與人類之間的協作。

Vibe Coding,或稱為 vibecoding,是一種現代化的軟體開發方法,透過自然語言提示來指導AI系統產生程式碼。這個術語由電腦科學家 Andrej Karpathy 於2025年2月提出,並迅速在科技界廣泛傳播。Vibe Coding 的目標是大量減少手動編碼,依賴如 ChatGPT、Claude、Copilot 和 Cursor 等AI編碼助手。

在實踐中,使用者以自然語言描述希望軟體具備的功能,AI解讀這些指示並自動生成程式碼。使用者測試輸出結果,與AI互動進行除錯,並反覆迭代,直到軟體按預期運作。這種高度對話式的方法以與AI的協作為中心,Karpathy 將這種經驗總結為:「我只看到事情、說出需求、執行程式、複製貼上,結果大多能運作。」

Vibe Coding 的心態由幾個關鍵原則定義。它優先考慮以自然語言輸入需求,而非手動撰寫程式碼,信任AI負責大部分開發工作,並且重視快速原型製作而非一開始就追求完美。目標是先構建出能運作的版本,僅在必要時進行細部優化,並接受一定程度的瑕疵,特別是在非關鍵或實驗性專案中。此外,Vibe Coding 降低了軟體開發的門檻,讓即使是初學者也能創造出功能性軟體。

Vibe Coding 的典型應用場景包括新想法的快速原型開發、小型個人效率工具的構建、在AI指導下學習新框架或程式語言,以及加速新創公司和小團隊的MVP(最小可行產品)開發。然而,它也有局限性。AI生成的程式碼可能混亂或低效,當使用者無法深刻理解AI編寫的程式時,除錯可能更加困難。對於需要高度可靠性、安全性和可維護性的生產等級系統,並不建議採用Vibe Coding。過度依賴未經充分審查的AI輸出,亦可能帶來重大風險。

與傳統的AI輔助程式設計相比,Vibe Coding 涉及更高程度的對AI系統的信任。在Vibe Coding中,使用者允許AI生成大部分甚至全部程式碼,進行最小限度的人工審查,並專注於快速實現可運作的成果。而在傳統AI輔助編碼中,開發者仍然掌握主導權,將AI作為輔助工具,並且嚴格進行代碼審查,對最終產品負責。儘管Vibe Coding適合快速推進的項目和非關鍵應用,傳統的編碼方法在生產系統中依然不可或缺。

為了成功運用Vibe Coding,開發者需要具備幾項核心技能。邏輯規劃至關重要——在開始提示之前,清楚地規劃要構建的內容。了解如 Rails、Django、Next.js 等對AI友善的框架,可以加速開發進程。透過Git或雲端快照頻繁建立檢查點,能確保穩定性並降低不可逆錯誤的風險。開發者必須在除錯時保持紀律,經常回到乾淨的基礎狀態以防止技術債堆積。上下文管理同樣關鍵:向AI提供完整的專案背景、相關文件及環境細節,可顯著提升生成程式碼的準確性。

選擇合適的工具亦扮演重要角色。Cursor 提供在專業本地環境中與AI深度整合的體驗,適合需要專注開發的項目。Windsurf 則針對快速原型開發和高頻率提示優化,非常適合進行實驗。Replit 則提供即時線上編碼和強大的多人協作能力,非常適合用於共同實驗和展示原型。

來自 Y Combinator 的合夥人 Tom Blomfield 分享了進階的 Vibe Coding 技巧,強調規劃、測試與模組化的重要性。他建議開發者在編碼前用Markdown規劃好專案結構,優先考慮整合測試而非單元測試,並在各層面上善用AI(如網站託管、資產生成等)。遇到問題時,切換不同的LLM(如Gemini、Claude或Sonnet)往往能找到更好的解法。利用語音輸入和截圖工具(如Aqua)可以加速與AI的溝通。同時,保持程式碼的模組化(小且清晰的檔案)有助於人與AI的協作,即使專案規模擴大,也能透過定期重構維持程式品質。

Vibe Coding 的工作流程十分直接:清晰地向AI描述功能需求,生成初步實作,測試結果,必要時與AI協作除錯,儲存進度,然後重複這個循環。這種迭代流程讓開發者能夠更快速地建構複雜應用程式,而不受傳統開發瓶頸的限制。

Vibe Coding 正在重塑軟體開發的格局,使建構軟體變得更快速、更具可及性與更具實驗性。它讓開發者能以低成本迅速探索各種創意,但也需要謹慎管理,以確保品質、安全性與可維護性不被犧牲。雖然Vibe Coding非常適合用於快速原型、個人專案、學習練習和早期MVP開發,但對於任務關鍵型或企業等級的應用,傳統的編碼實踐依然至關重要。透過理解並掌握Vibe Coding的優勢與限制,開發者能在現代軟體開發中解鎖更高的生產力與創新力。

Building Code Agents with Hugging Face smolagents

In the fast-evolving world of AI, agents have emerged as one of the most exciting frontiers. Thanks to projects like Hugging Face's smolagents, building specialized, secure, and powerful code agents has never been easier. In this post, we'll walk through the journey of agent development, explore how to build code agents, discuss secure execution strategies, learn how to monitor and evaluate them, and finally, design a deep research agent.

A Brief History of Agents

Agents have evolved dramatically over the past few years. Early LLM applications were static: users asked a question; models generated an answer. No memory, no decision-making, no real "agency."

But researchers dreamed of more: systems that could plan, decide, adapt, and act autonomously.

We can think of agency on a continuum:

  • Level 0: Stateless response (classic chatbots)
  • Level 1: Short-term memory and reasoning (ReAct pattern)
  • Level 2: Long-term memory, dynamic tool use
  • Level 3: Recursive self-improvement, autonomous goal setting (still experimental)

Early attempts at agency faced an "S-curve" of effectiveness. Initially, more agency added more confusion than benefit. But with improvements in prompting, tool use, and memory architectures, we're now climbing the second slope: agents are finally becoming truly effective.

Today, with frameworks like smolagents, you can build capable agents that write, execute, and even debug code in a secure and monitored environment.

Introduction to Code Agents

Code agents are agents specialized to generate and execute code to achieve a goal. Instead of just answering, they act programmatically.

Let's build a basic code agent with Hugging Face's smolagents:

from smolagents import Agent

agent = Agent(system_prompt="You are a helpful coding agent. Always solve tasks by writing Python code.")

response = agent.run("Write a function that calculates the factorial of a number.")

print(response)

What's happening?

  • We initialize an Agent with a system prompt.
  • We run a user query.
  • The agent responds by writing and executing Python code.

Sample Output:

def factorial(n):
    if n == 0:
        return 1
    else:
        return n * factorial(n-1)

Secure Code Execution

Running arbitrary code is risky. Even a well-meaning agent could:

  • Try to use undefined commands.
  • Import dangerous modules.
  • Enter infinite loops.

To build safe agents, we must:

  1. Capture Exceptions:
try:
    exec(agent_code)
except Exception as e:
    print(f"Error occurred: {e}")
  1. Filter Non-Defined Commands:

  2. Use a restricted execution environment, e.g., exec with a sanitized globals and locals dictionary.

  3. Prevent OS Imports:

  4. Scan code for forbidden keywords like os, subprocess, etc.

  5. Or disable built-ins selectively.

  6. Handle Infinite Loops:

  7. Run code in a separate thread or process with timeouts.

  8. Sandbox Execution:

  9. Use Python's multiprocessing or even Docker-based isolation for truly critical applications.

Example Secure Exec:

import multiprocessing

def safe_exec(code, timeout=2):
    def target():
        try:
            exec(code, {"__builtins__": {"print": print, "range": range}})
        except Exception as e:
            print(f"Execution error: {e}")

    p = multiprocessing.Process(target=target)
    p.start()
    p.join(timeout)
    if p.is_alive():
        p.terminate()
        print("Terminated due to timeout!")

Monitoring and Evaluating the Agent

Good agents aren't just built; they are monitored and improved over time.

Enter Phoenix.otel — an open telemetry-based tool to monitor LLM applications.

Key Metrics to Track:

  • Latency (response time)
  • Success/Error rates
  • Token usage
  • User feedback

Integration Example:

from phoenix.trace import init_tracing

init_tracing(service_name="code_agent")

# Your agent code here
agent.run("Write a quicksort algorithm.")

With this, every agent interaction is automatically traced and sent to your telemetry backend.

You can visualize execution traces, errors, and resource usage to continuously fine-tune the agent.

Building a Deep Research Agent

Sometimes, writing code isn't enough — agents need to research, retrieve information, and act based on live data.

We can supercharge our code agent with Tavily Browser, a retrieval-augmented generation (RAG) tool that lets agents browse the web.

Example:

from smolagents import Agent
from tavily import TavilyBrowser

browser = TavilyBrowser()
agent = Agent(
    system_prompt="You are a deep research coding agent.",
    tools=[browser]
)

response = agent.run("Find the latest algorithm for fast matrix multiplication and implement it.")
print(response)

Now your agent can:

  • Search academic papers.
  • Extract up-to-date methods.
  • Code the solution dynamically.

Building agents that combine reasoning, execution, and real-world retrieval unlocks a whole new level of capability.

Final Thoughts

We are entering a new era where agents can autonomously reason, code, research, and improve.

Thanks to lightweight frameworks like Hugging Face's smolagents, powerful browsing tools like Tavily, and robust monitoring with Phoenix.otel, building secure, powerful, and monitored code agents is now within reach for any developer.

The frontier of autonomous programming is wide open.

What will you build?

使用 Hugging Face smolagents 建立程式代理人

在快速演進的 AI 世界中,代理人(Agents) 成為最令人興奮的前沿領域之一。多虧了 Hugging Face 的 smolagents,現在建立專業化、安全且功能強大的程式代理人變得前所未有地簡單。在本文中,我們將探索代理人發展歷程、學習如何建立程式代理人、討論安全執行策略、了解如何監控與評估代理人,最後設計一個深入研究型的代理人。

代理人簡史:走向更高自主性的道路

代理人在過去幾年中經歷了巨大的演變。早期的 LLM 應用是靜態的:用戶提問,模型回答。沒有記憶、沒有決策、也沒有真正的 "自主性"。

但研究人員渴望更多:能夠規劃決策適應、並自主行動的系統。

我們可以將自主性視為一個連續光譜:

  • Level 0:無狀態回應(傳統聊天機器人)
  • Level 1:短期記憶與推理(ReAct 模式)
  • Level 2:長期記憶、動態工具使用
  • Level 3:遞迴自我改進、自主設定目標(仍在研究中)

早期的代理人嘗試面臨 "S 曲線" 效益挑戰。最初,自主性增加反而帶來更多混亂。但隨著提示工程、工具使用與記憶架構的進步,我們正攀登第二段斜坡:代理人終於變得真正有效。

今天,藉由像 smolagents 這樣的框架,你可以輕鬆建立能撰寫、執行、甚至除錯程式碼的代理人。

介紹程式代理人(含範例)

程式代理人 是專門用來生成並執行程式碼以達成目標的代理人。他們不只是回答,而是以程式行動

讓我們用 Hugging Face 的 smolagents 建立一個基本的程式代理人:

from smolagents import Agent

agent = Agent(system_prompt="You are a helpful coding agent. Always solve tasks by writing Python code.")

response = agent.run("Write a function that calculates the factorial of a number.")

print(response)

發生了什麼事? - 初始化一個具有系統提示的 Agent。 - 使用 run 來執行使用者查詢。 - 代理人透過撰寫並執行 Python 程式碼回應。

範例輸出:

def factorial(n):
    if n == 0:
        return 1
    else:
        return n * factorial(n-1)

安全執行程式碼

執行任意程式碼具有風險。即使是善意的代理人也可能: - 嘗試使用未定義的指令。 - 匯入危險模組。 - 進入無限迴圈。

要建立安全代理人,必須做到:

  1. 捕捉例外

    try:
        exec(agent_code)
    except Exception as e:
        print(f"Error occurred: {e}")
    

  2. 過濾未定義指令

  3. 使用受限的 globalslocals 字典執行 exec

  4. 防止危險匯入

  5. 掃描程式碼中是否包含如 ossubprocess 等危險關鍵字。
  6. 或選擇性地禁用部分 built-ins。

  7. 處理無限迴圈

  8. 在獨立執行緒或程序中運行程式碼並設定超時。

  9. 沙箱化執行

  10. 使用 Python 的 multiprocessing,甚至是 Docker 隔離關鍵應用。

安全執行範例:

import multiprocessing

def safe_exec(code, timeout=2):
    def target():
        try:
            exec(code, {"__builtins__": {"print": print, "range": range}})
        except Exception as e:
            print(f"Execution error: {e}")

    p = multiprocessing.Process(target=target)
    p.start()
    p.join(timeout)
    if p.is_alive():
        p.terminate()
        print("Terminated due to timeout!")

監控與評估代理人

好的代理人不僅要建構,還要持續監控與改進

使用 Phoenix.otel —— 一個基於 OpenTelemetry 的工具,來監控 LLM 應用程式。

需追蹤的關鍵指標: - 延遲(回應時間) - 成功/錯誤率 - Token 使用量 - 用戶回饋

整合範例:

from phoenix.trace import init_tracing

init_tracing(service_name="code_agent")

# 你的代理人程式碼
agent.run("Write a quicksort algorithm.")

透過此方式,每次代理人互動都會自動追蹤並傳送到遙測後端。

你可以視覺化執行過程、錯誤與資源使用情況,持續優化代理人。

建立深入研究型代理人(使用 Tavily Browser)

有時候,單純撰寫程式碼還不夠 —— 代理人需要研究檢索資訊,並基於即時資料行動。

我們可以使用 Tavily Browser 為程式代理人加持,打造檢索增強生成(RAG)能力。

範例:

from smolagents import Agent
from tavily import TavilyBrowser

browser = TavilyBrowser()
agent = Agent(
    system_prompt="You are a deep research coding agent.",
    tools=[browser]
)

response = agent.run("Find the latest algorithm for fast matrix multiplication and implement it.")
print(response)

現在你的代理人可以: - 搜尋學術論文。 - 抽取最新的方法論。 - 動態撰寫並執行程式碼。

結合推理執行即時檢索的代理人,開啟了全新層級的能力。

結語

我們正進入一個代理人能自主推理、編程、研究與持續改進的新時代。

有了像 Hugging Face smolagents 這樣的輕量級框架,加上 Tavily 的強大檢索功能與 Phoenix.otel 的監控工具,建立安全強大可監控的程式代理人已觸手可及。

自主編程的疆界已全面展開。

你會打造什麼?

LangSmith - Visibility While Building with Tracing

As the complexity of LLM-powered applications increases, understanding what’s happening under the hood becomes crucial—not just for debugging but for continuous optimization and ensuring system reliability. This is where LangSmith shines, providing developers with powerful tools to trace, visualize, and debug their AI workflows.

In this post, we'll explore how LangSmith enables deep observability in your applications through tracing, allowing for a more efficient and transparent development process.

Tracing with @traceable

The cornerstone of LangSmith’s tracing capabilities is the @traceable decorator. This decorator is a simple and effective way to log detailed traces from your Python functions.

How it Works

By applying @traceable to a function, LangSmith automatically generates a run tree each time the function is called. This tree links all function calls to the current trace, capturing essential information such as:

  • Function inputs
  • Function name
  • Execution metadata

Furthermore, if the function raises an error or returns a response, LangSmith captures this and adds it to the trace. The result is sent to LangSmith in real-time, allowing you to monitor the health of your application. Importantly, this happens in a background thread, ensuring that your app’s performance remains unaffected.

This method is invaluable when debugging or identifying the root cause of an issue. The detailed trace data allows you to trace errors back to their source and quickly rectify problems in your codebase.

Code Example: Using @traceable

from langsmith.traceable import traceable
import random

# Apply the @traceable decorator to the function you want to trace
@traceable
def process_transaction(transaction_id, amount):
    """
    Simulates processing a financial transaction.
    """
    # Simulate processing logic
    result = random.choice(["success", "failure"])

    # Simulate an error for demonstration
    if result == "failure":
        raise ValueError(f"Transaction {transaction_id} failed due to insufficient funds.")

    return f"Transaction {transaction_id} processed with amount {amount}."

# Call the function
try:
    print(process_transaction(101, 1000))  # Expected to succeed
    print(process_transaction(102, 2000))  # Expected to raise an error
except ValueError as e:
    print(e)
Explanation:
  • The @traceable decorator logs detailed traces each time the process_transaction function is called.
  • Inputs such as transaction_id and amount are automatically captured.
  • Execution metadata, such as the function name, is also logged.
  • If an error occurs (as in the second transaction), LangSmith captures the error and associates it with the trace.

Adding Metadata for Richer Traces

LangSmith allows you to send arbitrary metadata along with each trace. This metadata is a set of key-value pairs that can be attached to your function runs, providing additional context. Some examples include:

  • Version of the application that generated the run
  • Environment in which the run occurred (e.g., development, staging, production)
  • Custom data relevant to the trace

Metadata is especially useful when you need to filter or group runs in the LangSmith UI for more granular analysis. For instance, you could group traces by version to monitor how specific changes are impacting your system.

Code Example: Adding Metadata

from langsmith.traceable import traceable

@traceable(metadata={"app_version": "1.2.3", "environment": "production"})
def process_order(order_id, user_id, amount):
    """
    Processes an order and simulates transaction completion.
    """
    # Simulate order processing logic
    if amount <= 0:
        raise ValueError("Invalid order amount")
    return f"Order {order_id} processed for user {user_id} with amount {amount}"

try:
    print(process_order(101, 1001, 150))
    print(process_order(102, 1002, -10))  # This will raise an error
except ValueError as e:
    print(f"Error: {e}")
Explanation:
  • The metadata parameter is added to the decorator, including the app version and environment.
  • This metadata will be logged with the trace, allowing you to filter and group runs by these values in LangSmith’s UI.

LLM Runs for Chat Models

LangSmith offers special processing and rendering for LLM traces. To make full use of this feature, you need to log LLM traces in a specific format.

Input Format

For chat-based models, inputs should be logged as a list of messages, formatted in an OpenAI-compatible style. Each message must contain:

  • role: the role of the message sender (e.g., user, assistant)
  • content: the content of the message
Output Format

Outputs from your LLM can be logged in various formats:

  1. A dictionary containing choices, which is a list of dictionaries. Each dictionary must contain a message key with the message object (role and content).
  2. A dictionary containing a message key, which maps to the message object.
  3. A tuple/array with the role as the first element and content as the second element.
  4. A dictionary with role and content directly.

Additionally, LangSmith allows for the inclusion of metadata such as:

  • ls_provider: the model provider (e.g., "openai", "anthropic")
  • ls_model_name: the model name (e.g., "gpt-4o-mini", "claude-3-opus")

These fields help LangSmith identify the model and compute associated costs, ensuring that the tracking is precise.

LangChain and LangGraph Integration

LangSmith integrates seamlessly with LangChain and LangGraph, enabling advanced functionality in your AI workflows. LangChain provides powerful tools for managing LLM chains, while LangGraph offers a visual representation of your AI workflow. Together with LangSmith’s tracing tools, you can gain deep insights into how your chains and graphs are performing, making optimization easier.

Tracing Context Manager

Sometimes, you might want more control over the tracing process. This is where the Tracing Context Manager comes in. The context manager gives you the flexibility to log traces for specific blocks of code, especially when it's not feasible to use a decorator or wrapper.

Using the context manager, you can control the inputs, outputs, and other trace attributes within a specific scope. It integrates smoothly with the @traceable decorator and other wrappers, allowing you to mix and match tracing strategies depending on your use case.

Code Example: Using the Tracing Context Manager

from langsmith.traceable import TraceContext

def complex_function(data):
    # Start tracing specific block of code
    with TraceContext() as trace:
        # Simulate processing logic
        result = sum(data)
        trace.set_metadata({"data_size": len(data), "processing_method": "sum"})
        return result

# Call the function
print(complex_function([1, 2, 3, 4, 5]))
Explanation:
  • The TraceContext context manager is used to start tracing for a specific block of code (in this case, summing a list of numbers).
  • You can set additional metadata using trace.set_metadata() within the context.
  • This method gives you fine-grained control over where and when traces are logged, providing flexibility when you cannot use the @traceable decorator.

Conversational Threads

In many LLM applications, especially chatbots, tracking conversations across multiple turns is critical. LangSmith’s Threads feature allows you to group traces into a single conversation, maintaining context as the conversation progresses.

Grouping Traces

To link traces together, you’ll need to pass a special metadata key (session_id, thread_id, or conversation_id) with a unique value (usually a UUID). This key ensures that all traces related to a particular conversation are grouped together, making it easy to track the progression of each interaction.

Summary

LangSmith empowers developers with unparalleled visibility into their applications, especially when working with LLMs. By leveraging the @traceable decorator, adding rich metadata, and using advanced features like tracing context managers and conversational threads, you can optimize the performance, reliability, and transparency of your AI applications.

Whether you're building complex chat applications, debugging deep-seated issues, or simply monitoring your system’s health, LangSmith provides the tools necessary to ensure a smooth development process. Happy coding!

LangSmith - 建立過程中的可視性與追蹤

隨著LLM(大規模語言模型)驅動的應用程式越來越複雜,了解系統背後的運作變得至關重要——這不僅對調試至關重要,還有助於持續優化和確保系統可靠性。在這方面,LangSmith發揮了重要作用,為開發者提供了強大的工具來追蹤、可視化和調試其AI工作流程。

在這篇文章中,我們將探討LangSmith如何通過追蹤功能為你的應用程式提供深度可觀察性,從而實現更高效且透明的開發過程。

使用 @traceable 進行追蹤

LangSmith追蹤功能的基石是 @traceable 裝飾器。這個裝飾器是一種簡單有效的方法,用來記錄Python函數的詳細追蹤信息。

它是如何運作的

通過將 @traceable 應用到一個函數,LangSmith會在每次調用該函數時自動生成一棵運行樹。這棵樹將所有函數調用鏈接到當前的追蹤,並捕捉以下重要信息:

  • 函數輸入
  • 函數名稱
  • 執行元數據

此外,若函數引發錯誤或返回回應,LangSmith會捕捉到這些信息並將其添加到追蹤中。結果會實時發送到LangSmith,讓你可以監控應用程式的健康狀況。重要的是,這一切發生在後台執行緒中,確保應用程式的性能不受影響。

這種方法對於調試或識別問題的根源至關重要。詳細的追蹤數據讓你能夠追溯錯誤的源頭,並迅速修正代碼中的問題。

代碼範例:使用 @traceable

from langsmith.traceable import traceable
import random

# 將 @traceable 裝飾器應用到你想追蹤的函數
@traceable
def process_transaction(transaction_id, amount):
    """
    模擬處理金融交易。
    """
    # 模擬處理邏輯
    result = random.choice(["success", "failure"])

    # 模擬錯誤,演示使用
    if result == "failure":
        raise ValueError(f"交易 {transaction_id} 由於資金不足而失敗。")

    return f"交易 {transaction_id} 已處理,金額為 {amount}。"

# 調用函數
try:
    print(process_transaction(101, 1000))  # 預期成功
    print(process_transaction(102, 2000))  # 預期引發錯誤
except ValueError as e:
    print(e)
解釋:
  • @traceable 裝飾器會在每次調用 process_transaction 函數時記錄詳細的追蹤信息。
  • 輸入(如 transaction_idamount)會自動捕捉。
  • 執行元數據(如函數名稱)也會被記錄。
  • 如果發生 錯誤(如第二次交易),LangSmith會捕捉錯誤並將其與追蹤關聯。

為更豐富的追蹤添加元數據

LangSmith允許你與每個追蹤一起發送任意元數據。這些元數據是一組鍵值對,可以附加到你的函數運行中,提供額外的上下文信息。以下是一些示例:

  • 生成運行的應用程式 版本
  • 運行發生的 環境(例如:開發、測試、上線)
  • 與追蹤相關的 自定義數據

元數據在需要過濾或分組運行時特別有用,這可以讓你在LangSmith的UI中進行更精細的分析。例如,你可以按版本分組追蹤,監控特定變更對系統的影響。

代碼範例:添加元數據

from langsmith.traceable import traceable

@traceable(metadata={"app_version": "1.2.3", "environment": "production"})
def process_order(order_id, user_id, amount):
    """
    處理訂單並模擬交易完成。
    """
    # 模擬訂單處理邏輯
    if amount <= 0:
        raise ValueError("無效的訂單金額")
    return f"訂單 {order_id} 為用戶 {user_id} 處理,金額為 {amount}"

try:
    print(process_order(101, 1001, 150))
    print(process_order(102, 1002, -10))  # 這將引發錯誤
except ValueError as e:
    print(f"錯誤: {e}")
解釋:
  • 元數據 參數被添加到裝飾器中,包含應用程式版本和環境。
  • 這些元數據會與追蹤一起記錄,允許你在LangSmith的UI中按這些值進行過濾和分組。

LLM 聊天模型的運行

LangSmith提供了對LLM(大規模語言模型)追蹤的特別處理和渲染。為了充分利用這一功能,你需要按照特定格式記錄LLM的追蹤。

輸入格式

對於基於聊天的模型,輸入應該作為消息列表記錄,並以OpenAI兼容的格式表示。每條消息必須包含:

  • role:消息發送者的角色(例如:userassistant
  • content:消息的內容
輸出格式

LLM的輸出可以以以下幾種格式記錄:

  1. 包含 choices 的字典,choices 是字典列表,每個字典必須包含 message 鍵,該鍵對應消息對象(角色和內容)。
  2. 包含 message 鍵的字典,該鍵對應消息對象。
  3. 包含兩個元素的元組/數組,第一個元素是角色,第二個元素是內容。
  4. 包含 rolecontent 直接的字典。

此外,LangSmith還允許包含以下元數據:

  • ls_provider:模型提供者(例如:“openai”,“anthropic”)
  • ls_model_name:模型名稱(例如:“gpt-4o-mini”,“claude-3-opus”)

這些字段幫助LangSmith識別模型並計算相關的成本,確保追蹤的精確性。

LangChain 和 LangGraph 集成

LangSmith與 LangChainLangGraph 無縫集成,使你的AI工作流程擁有更強大的功能。LangChain為管理LLM鏈提供了強大的工具,而LangGraph則提供了可視化的AI工作流程表示。結合LangSmith的追蹤工具,你可以深入了解你的鏈和圖的表現,從而更輕鬆地進行優化。

追蹤上下文管理器

有時候,你可能希望對追蹤過程有更多控制。這時,追蹤上下文管理器 可以派上用場。這個上下文管理器讓你能夠為特定的代碼區塊記錄追蹤,特別是當無法使用裝飾器或包裝器時。

使用上下文管理器,你可以在特定範圍內控制輸入、輸出和其他追蹤屬性。它與 @traceable 裝飾器和其他包裝器無縫集成,讓你根據需要混合使用不同的追蹤策略。

代碼範例:使用追蹤上下文管理器

from langsmith.traceable import TraceContext

def complex_function(data):
    # 開始追蹤特定代碼區塊
    with TraceContext() as trace:
        # 模擬處理邏輯
        result = sum(data)
        trace.set_metadata({"data_size": len(data), "processing_method": "sum"})
        return result

# 調用函數
print(complex_function([1, 2, 3, 4, 5]))
解釋:
  • 使用 TraceContext 上下文管理器來開始追蹤特定代碼區塊(在此案例中是對一組數字求和)。
  • 你可以使用 trace.set_metadata() 在上下文中設置附加的元數據。
  • 這種方法讓你能夠精細控制在哪裡和何時記錄追蹤,提供了在無法使用 @traceable 裝飾器時的靈活性。

聊天會話追蹤

在許多LLM應用中,特別是聊天機器人,追蹤多輪對話至關重要。LangSmith的 會話(Threads) 功能允許你將多個追蹤組織為單一會話,並在會話進行過程中保持上下文。

追蹤分組

為了將追蹤關聯起來,你需要傳遞一個特殊的元數據鍵(session_idthread_id,或 conversation_id)和唯一值(通常是UUID)。這個鍵確保與特定會話相關的所有追蹤會被分組在一起,便於追蹤每次交互的進展。

小結

LangSmith為開發者提供了前所未有的應用程式可見性,特別是在處理LLM時。通過利用 @traceable 裝飾器、添加豐富的元數據以及使用追蹤上下文管理器和會話追蹤等先進功能,你可以優化AI應用程式的性能、可靠性和透明度。

無論你是在構建複雜的聊天應用、調試深層次問題,還是單純監控系統的健康狀況,LangSmith都提供了確保開發過程順利進行所需的工具。祝你編程愉快!

LangChain - From Simple Prompts to Autonomous Agents

As large language models (LLMs) like OpenAI’s GPT-4 continue to evolve, so do the frameworks and techniques that make them easier to use and integrate into real-world applications. Whether you're building a chatbot, automating document analysis, or creating intelligent agents that can reason and use tools, understanding how to interact with LLMs is key. This post walks through a practical journey of using both the OpenAI API and LangChain — exploring everything from basic prompt engineering to building modular, structured, and even parallelized chains of functionality.

Sending Basic Prompts with OpenAI and LangChain

The first step in any LLM-powered app is learning how to send a prompt and receive a response.

Using OpenAI API directly:

import openai

openai.api_key = "your-api-key"

response = openai.ChatCompletion.create(
    model="gpt-4",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Explain quantum computing in simple terms."}
    ]
)

print(response['choices'][0]['message']['content'])

Using LangChain with OpenAI under the hood:

from langchain.chat_models import ChatOpenAI
from langchain.schema import HumanMessage

chat = ChatOpenAI(model_name="gpt-4")
response = chat([HumanMessage(content="Explain quantum computing in simple terms.")])
print(response.content)

LangChain abstracts away boilerplate while enabling advanced functionality.

Streaming and Batch Processing with LangChain

LangChain simplifies both streaming and batch processing:

Streaming Responses:

from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler

chat = ChatOpenAI(
    streaming=True,
    callbacks=[StreamingStdOutCallbackHandler()],
    model_name="gpt-4"
)

chat([HumanMessage(content="Tell me a long story about a brave cat.")])

Batch Processing:

messages = [
    [HumanMessage(content="What is AI?")],
    [HumanMessage(content="Define machine learning.")],
]

responses = chat.batch(messages)
for r in responses:
    print(r.content)

Iterative Prompt Engineering

Prompt engineering is not a one-and-done task. It's an iterative process of experimentation and improvement.

Start simple:

"Summarize this article."

Then refine:

"Summarize this article in bullet points, emphasizing key technical insights and potential implications for developers."

Observe results. Adjust tone, structure, examples, or context as needed. LangChain allows quick iteration by swapping prompt templates or changing message context.

Prompt Templates for Reuse and Abstraction

LangChain provides prompt templates to create reusable, parameterized prompts.

from langchain.prompts import ChatPromptTemplate

template = ChatPromptTemplate.from_template("Translate '{text}' to {language}")
prompt = template.format_messages(text="Hello", language="Spanish")

This modularity is essential as your application grows more complex.

LangChain Expression Language (LCEL)

LCEL enables you to compose reusable, declarative chains like functional pipelines.

from langchain.chat_models import ChatOpenAI
from langchain.prompts import ChatPromptTemplate
from langchain.output_parsers import StrOutputParser

prompt = ChatPromptTemplate.from_template("Tell me a joke about {topic}")
llm = ChatOpenAI(model="gpt-4")
parser = StrOutputParser()

chain = prompt | llm | parser
print(chain.invoke({"topic": "AI"}))

You can compose chains in a clean, modular way using LCEL's pipe operator.

Custom Runnables for Extensibility

Sometimes, you need to insert custom logic into a chain. LangChain allows this with custom runnables.

from langchain_core.runnables import RunnableLambda

def uppercase(input: str) -> str:
    return input.upper()

uppercase_runnable = RunnableLambda(uppercase)
chain = prompt | uppercase_runnable | llm

Perfect for injecting business logic or data preprocessing into a flow.

Composing Chains and Running in Parallel

Chains can be composed to run sequentially or in parallel:

Parallel example:

from langchain.schema.runnable import RunnableParallel

parallel_chain = RunnableParallel({
    "english": prompt.bind(topic="cats"),
    "spanish": prompt.bind(topic="gatos")
}) | llm | parser

result = parallel_chain.invoke({})
print(result)

This is great for multi-lingual output, comparison tasks, or speeding up multiple independent calls.

Understanding Chat Message Types

Working with system, user, and assistant roles allows for nuanced conversations.

messages = [
    {"role": "system", "content": "You are a kind tutor."},
    {"role": "user", "content": "Help me understand Newton's laws."}
]

You can experiment with few-shot examples, chain-of-thought reasoning, or tightly controlling behavior via the system message.

Storing Messages: Conversation History for Chatbots

Use LangChain’s ConversationBufferMemory to track chat history:

from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain

memory = ConversationBufferMemory()
conversation = ConversationChain(llm=chat, memory=memory)

conversation.predict(input="Hello!")
conversation.predict(input="Can you remember what I just said?")

This enables persistent, context-aware chatbot behavior.

Structured Output from LLMs

LangChain helps enforce response schemas:

from langchain.output_parsers import PydanticOutputParser
from pydantic import BaseModel

class Info(BaseModel):
    topic: str
    summary: str

parser = PydanticOutputParser(pydantic_object=Info)

chain = prompt | llm | parser
result = chain.invoke({"topic": "cloud computing"})

You get structured, type-safe data instead of freeform text.

Analyzing and Tagging Long Documents

LangChain supports splitting and analyzing long documents:

from langchain.text_splitter import RecursiveCharacterTextSplitter

splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50)
chunks = splitter.split_text(long_text)

# Process each chunk with a summarization chain

Apply tagging, summarization, sentiment analysis, and more at scale.

Augmenting LLMs with Custom Tools

To overcome the limits of LLMs, you can give them access to tools like search, databases, or calculators.

from langchain.agents import load_tools, initialize_agent

tools = load_tools(["serpapi", "llm-math"], llm=chat)
agent = initialize_agent(tools, chat, agent="zero-shot-react-description")

agent.run("What is the weather in Singapore and what is 3*7?")

LLMs can now act based on real-world data and logic.

Creating Autonomous Agents with Tool Use

Agents go a step further: they reason about when to use tools and how to combine outputs.

LangChain’s agent framework lets you build intelligent systems that think step-by-step and make decisions, improving user experience and application power.

Final Thoughts

We started with simple prompts and ended up creating parallelized, structured, tool-augmented LLM pipelines — all thanks to the power of OpenAI's API and LangChain. Whether you're building a smart assistant, document analyzer, or fully autonomous agent, mastering these tools and patterns gives you a strong foundation to push the boundaries of what’s possible with LLMs.

使用 LangChain - 從基礎提示到自主代理

隨著大型語言模型(LLMs)如 OpenAI 的 GPT-4 持續演進,讓它們更容易使用與整合到真實世界應用中的框架與技術也不斷推進。不論你是在打造聊天機器人、自動化文件分析,或是創建能推理與使用工具的智能代理,理解如何與 LLM 互動都是關鍵。這篇文章會帶你從基礎開始,使用 OpenAI API 和 LangChain,逐步深入到模組化、結構化,甚至可以平行作業的鏈式功能。

使用 OpenAI 和 LangChain 傳送基礎提示

開發任何 LLM 應用的第一步,就是學會如何發送提示(prompt)並接收回應。

直接使用 OpenAI API

import openai

openai.api_key = "your-api-key"

response = openai.ChatCompletion.create(
    model="gpt-4",
    messages=[
        {"role": "system", "content": "你是一個樂於助人的助手。"},
        {"role": "user", "content": "用簡單的方式解釋量子運算。"}
    ]
)

print(response['choices'][0]['message']['content'])

使用 LangChain(底層仍是 OpenAI)

from langchain.chat_models import ChatOpenAI
from langchain.schema import HumanMessage

chat = ChatOpenAI(model_name="gpt-4")
response = chat([HumanMessage(content="用簡單的方式解釋量子運算。")])
print(response.content)

LangChain 幫助你隱藏繁瑣的細節,同時開啟進階功能的大門。

使用 LangChain 串流和批次處理回應

LangChain 也讓串流回應與批次處理變得很簡單:

串流回應

from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler

chat = ChatOpenAI(
    streaming=True,
    callbacks=[StreamingStdOutCallbackHandler()],
    model_name="gpt-4"
)

chat([HumanMessage(content="講一個關於勇敢貓咪的長故事。")])

批次處理

messages = [
    [HumanMessage(content="什麼是人工智慧?")],
    [HumanMessage(content="介紹一下機器學習。")]
]

responses = chat.generate(messages)
for res in responses.generations:
    print(res[0].text)

迭代式提示工程的重要性

在許多情境中,單次提示通常無法直接得到理想的回應。因此,我們必須進行迭代式提示工程:反覆調整、測試和改進提示,直到引導 LLM 產生符合需求的回應。這種實踐讓開發者可以更好地控制 LLM 行為,提高模型回應的準確性與品質。

抽象與重用提示:使用提示模板

若你發現自己不斷重複類似的提示內容,可以透過提示模板(Prompt Templates)來抽象化提示。這樣做可以提高重用性,減少錯誤,同時讓系統更容易擴展和維護。

探索 LangChain 表達式語言(LCEL)

LangChain Expression Language(LCEL)允許你以優雅且模組化的方式組合鏈(chains)。LCEL 不只讓提示組合變得容易,還能清楚定義每個步驟的輸入與輸出,讓開發複雜流程變得直覺又清晰。

創建自訂 LCEL 功能:客製化 Runnable

當內建元件無法滿足你的需求時,你可以透過自訂 Runnable來擴充 LCEL。自訂 Runnable 讓你可以添加自己的邏輯,插入到鏈條的任意位置,實現高度個性化的行為。

組合與平行作業的鏈

LangChain 允許你串接多個鏈條(chains),甚至可以設計鏈條並行作業。這意味著你可以同時處理多個請求或多個分析步驟,大幅提高整體運算效率和應用的即時性。

深入理解 Chat LLM 的訊息類型

與聊天型 LLM 互動時,我們使用不同訊息類型(message types),例如:

  • system 訊息(設定模型角色)
  • user 訊息(用戶輸入)
  • assistant 訊息(模型回應)

掌握這些訊息類型,才能有效地使用少量樣本提示(few-shot prompting)思維鏈提示(chain-of-thought prompting),並且透過控制 system 訊息來定義 LLM 的行為與語氣。

聊天記憶:保存對話歷史

為了讓聊天機器人能記住過去的對話內容,我們可以將人類訊息(HumanMessage)和 AI 訊息(AIMessage)儲存下來。這樣可以實現更自然的多輪對話,並且讓 LLM 理解上下文。

定義結構化輸出格式

有時,我們需要 LLM 產生特定結構的回應(例如 JSON 或表格格式)。透過明確地在提示中指定輸出結構,可以大幅提升 LLM 生成可解析資料的可靠度。

結構化資料分析與標記

透過結合 LLM 與結構化資料集合,可以執行如長篇文件分析、自動化分類、標籤生成等多種文本處理任務,讓 LLM 成為強大的資料助手。

超越 LLM:自訂工具與代理

雖然 LLM 很強大,但它們也有侷限。透過創建自訂工具(custom tools)並提供給 LLM 使用,可以擴展模型能力,讓它能查詢外部資料、運算或操作 API。

更進一步,可以打造具備推理能力的智能代理(agents)。代理能根據情境判斷何時使用工具,並將工具的結果整合到最終回應中,實現更複雜的任務自動化。


結語

從單純發送提示,到打造模組化、結構化、甚至具備推理與工具使用能力的智能代理,LLM 應用開發是一場精彩的旅程。掌握 OpenAI API 和 LangChain 的運用,將為你的 AI 開發帶來無限可能!

Core Banking Market in Vietnam, Marketing Strategies and Competitive Landscape

Vietnam’s banking sector is undergoing rapid digital transformation, creating new opportunities for core banking solution providers. Both established “legacy” core banking vendors and newer neo-core fintech players are competing to modernize the technology foundations of Vietnam’s traditional banks and emergent digital-only banks. This report provides a comprehensive market overview, analyzes marketing channels and customer acquisition strategies in this B2B fintech space, compares key local and foreign core banking vendors (with market share and positioning), and examines the decision drivers of Vietnamese banks. Insights are tailored for a neo-core platform planning its first entry into Southeast Asia, highlighting how to effectively market core banking solutions in Vietnam’s context.

Vietnam Core Banking Market Overview

Vietnam has a diverse mix of large state-owned commercial banks, joint-stock (private) banks, foreign bank branches, and now a new wave of digital banks. Nearly all Vietnamese banks have implemented modern core banking systems over the past two decades (CORE banking of commercial banks in Vietnam). This was driven by needs to handle high transaction growth and improve competitiveness post WTO integration. Banks’ top strategic priorities include regulatory compliance, improving asset quality, customer centricity, digital convergence, and fending off competition (CORE banking of commercial banks in Vietnam). However, many incumbents historically ran on obsolete core platforms that lacked automation, had siloed customer data, and were costly to maintain (CORE banking of commercial banks in Vietnam). In recent years, pressure to upgrade core systems has intensified as banks seek real-time, 24/7 digital banking capabilities. In a 2023 survey, an “overwhelming 94%” of bank executives in Vietnam said slow digital transformation had caused them to lose new customers (10x Banking announces APAC expansion plans). This urgency, combined with Vietnam’s young, tech-savvy population (over 70% under 35) and ~90% smartphone adoption, has set the stage for aggressive core banking modernization.

Crucially, Vietnam’s regulator (State Bank of Vietnam) is supporting digital banking innovation, encouraging cloud technology adoption and open banking APIs. For example, Vietnam International Bank (VIB) recently became the first bank in Vietnam to run its core banking on the cloud (AWS), signaling regulatory openness to cloud cores (VIB drives digital banking innovation with Temenos’ latest version of banking platform powered by AWS) (VIB drives digital banking innovation with Temenos’ latest version of banking platform powered by AWS). At the same time, new digital-only banks have emerged – such as TNEX (by MSB) and Timo – which are essentially “greenfield” projects that often choose cloud-native core platforms from fintech vendors. Traditional banks are also launching digital spinoffs (e.g. HDBank’s new digital bank “Viet Future Bank (VietFutr)”, branded as Vikki, launched in 2024 using a modern core (HD Bank launches Vikki Digital Bank in Vietnam powered by Thought Machine’s Vault Core)). Overall, the market is dynamic: incumbent banks are upgrading core systems to enable omnichannel services and personalized products, while challenger banks demand lean, fast-to-deploy core solutions. This creates a competitive landscape for both established core banking providers and neo-core entrants.

Key Vendors in the Vietnamese Core Banking Market

Vietnam’s core banking market is served by a mix of local and international vendors, though foreign providers dominate in technology ownership. Table 1 summarizes the key solution providers (legacy and neo-core), their origins, notable Vietnamese bank clients, and market presence:

Table 1. Key Core Banking Solution Providers in Vietnam – Vendor Overview and Presence

Vendor (Origin) Core Platform Notable Vietnam Clients Market Share / Presence Competitive Positioning
Temenos (Switzerland) Temenos T24 Transact (Core) Techcombank, Sacombank, MB Bank, OCB, SeABank, SHB, etc. ~37.5% of Vietnamese banks (market leader) (CORE banking of commercial banks in Vietnam) Global leader; proven Tier-1 core system. Strong local track record and partner network. Open API, microservice architecture for digital banking (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade).
Oracle FSS (USA) Flexcube ACB, LienViet PostBank, OceanBank, TPBank, VietCapital Bank, VRB, etc. (Oracle FS signs new core banking client in Vietnam, Kien Long Bank) ~25% share by number of banks (CORE banking of commercial banks in Vietnam) Well-established in Vietnam; many mid-tier banks use Flexcube. Emphasizes broad functionality and Oracle ecosystem integration.
FIS / SunGard (USA) Systematics; Ambit (formerly SunGard) HDBank (previous core), SaigonBank, others (via SunGard Ambit Core) ~6% share (CORE banking of commercial banks in Vietnam) (SunGard now part of FIS) Provided legacy core solutions (Ambit Core etc.) to a few banks. Presence now mostly via FIS’s broader portfolio.
Fiserv (USA) Signature; (and ex-OSI core) ACB (formerly used OSI’s core, now Fiserv), possibly others ~9.4% share (CORE banking of commercial banks in Vietnam) Gained foothold via acquisition of Open Solutions (OSI) used by some banks. Not a major new contender recently for core deals.
Silverlake (Malaysia) Silverlake Integrated Banking (SIBS) Vietcombank, BIDV, Maritime Bank Minority share (a few large banks) (CORE banking of commercial banks in Vietnam) Regional core banking provider. Used in some large VN banks (especially state-owned) historically; known for retail and cards capabilities.
Infosys Finacle (India) Finacle Core Banking Eximbank (reported), possibly Standard Chartered Vietnam (for retail) Very limited adoption (1–2 banks) (CORE banking of commercial banks in Vietnam) Leading core platform in Asia globally, but minimal Vietnam presence so far. Focused on digital capabilities; often delivered via partners like IBM.
TCS (India) BaNCS ANZ Vietnam (now Shinhan) – legacy deployment; Southern Bank (legacy) Niche (used in a couple of banks historically) Comprehensive core suite; had some deployments in foreign JV banks. Competes on flexibility and multi-entity support.
Hyundai IT (Korea) Hyundai iPCAS Agribank (Vietnam’s largest state-owned rural bank) ([PDF] Agribank case study: - Compass Plus Technologies) ~6.3% share (CORE banking of commercial banks in Vietnam) Provided via ODA project financing. Handles high volume branch transactions. Localized for Vietnam by Hyundai; essentially a one-bank case.
Polaris / Intellect (India) Intellect Core (formerly Polaris) SHB (old core, now replacing) (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade) Niche (1–2 banks used) Deployed in a small number of mid-tier banks for specific modules. Facing replacement by newer systems in VN (e.g. SHB moved to Temenos).
Unisys (USA) Unisys Core (e.g. EBS) Possibly VietABank or foreign bank branch (minor presence) Niche (legacy usage) Legacy core technology; not actively marketing in Vietnam now.
Neo-core Entrants:
Mambu (Germany) SaaS Cloud Core (API-first) TNEX digital bank (MSB’s spinoff) ([Vietnam’s first digital-only bank TNEX Mambu](https://mambu.com/en/customer/tnex#:~:text=Having%20selected%20Mambu%E2%80%99s%20API,native%20technology)) ([Vietnam’s first digital-only bank TNEX Mambu](https://mambu.com/en/customer/tnex#:~:text=At%20the%20beginning%20of%202020%2C,in)); Timo digital bank ([Timo
Thought Machine (UK) Vault (Cloud-Native Core) HDBank (core transformation + powering “Vikki” digital bank) (HD Bank announces strategic collaboration with Thought Machine to transform banking in Vietnam) (HD Bank launches Vikki Digital Bank in Vietnam powered by Thought Machine’s Vault Core) New entrant – first deal in 2022 with top-10 bank Modern core built on smart contracts and microservices. Selected by HDBank for flexibility and always-on capability – filling a gap for real-time services in Vietnam (HD Bank launches Vikki Digital Bank in Vietnam powered by Thought Machine’s Vault Core). Strong appeal to large banks pursuing multi-year digital overhaul.
10x Banking (UK) 10x SuperCore (Cloud-Native) (No clients in Vietnam yet; entering region) New entrant – announced APAC expansion (2023) (10x Banking announces APAC expansion plans) Ultra-scalable cloud core from Barclays’ ex-CEO’s fintech. Known for powering Chase UK and Westpac. Emphasizes agility, “meta-core” architecture and low cost-to-serve. Eyeing high-growth APAC markets like Vietnam where few banks focus on core modernization (only 8% do, per 10x study) (10x Banking announces APAC expansion plans).
Vilja (Sweden) Vilja Core (Composable Core) (No live VN bank yet; 2025 entry via partners) New entrant – building pipeline via local partnerships Nordic cloud-native core specialist, now targeting Vietnam’s mid-tier and digital banks. Established an ASEAN dev center and partnered with FPT, Gimasys, etc. (Sweden’s Vilja makes its foray into Vietnam to support digital banking) to localize and sell. Positions on compliance readiness (open API, cloud security) and quick product building for digital banking.

Local Vendors: Notably, Vietnam does not have any dominant home-grown core banking software provider in wide use. Most banks rely on international solutions or in-house builds for core systems. Large domestic IT firms like FPT IS and CMC mainly act as integrators/resellers rather than offering their own core platforms. Some banks have developed custom core modules internally (e.g. some state banks historically built or heavily customized their core), but this trend is declining due to the complexity and cost. Instead, local tech firms form partnerships with foreign vendors to implement or co-develop solutions. For instance, FPT IS and other Vietnamese partners have teamed up with Vilja to support its core banking projects (Sweden’s Vilja makes its foray into Vietnam to support digital banking). Such alliances indicate that even “local” solutions in Vietnam’s core banking market are usually delivered via foreign technology combined with local services.

Overall, international vendors dominate Vietnam’s core banking installations – Temenos and Oracle alone account for roughly half of all bank cores (CORE banking of commercial banks in Vietnam) – but new cloud-based entrants are gaining attention, especially for digital banking initiatives. The competitive landscape is thus two-fold: legacy vendors with large footprints and long histories in Vietnam, versus new fintech-core providers offering fresh technology and new commercial models. Each employs distinct marketing and customer acquisition strategies, discussed next.

Marketing Channels and Strategies for Core Banking Providers

Marketing enterprise core banking solutions in Vietnam requires a B2B-focused, relationship-driven approach, supported by industry thought leadership and strategic partnerships. Key marketing channels and strategies include:

  • Industry Conferences & Events: Banking technology vendors frequently engage Vietnamese banks through conferences, forums, and seminars. Many host dedicated events: for example, Temenos holds an annual Banking Forum or Regional Forum in Vietnam (bringing together hundreds of banking professionals) (Temenos Regional Forum 2023: ASEAN) to showcase innovations and client success stories. Such events allow vendors to network directly with bank executives, demo new capabilities (e.g. digital core, cloud deployment), and strengthen brand credibility. Participation in third-party conferences is also common – e.g. the annual ICT in Banking forum (co-organized with the SBV) often features core solution showcases. New entrants leverage events as well: in March 2025, Vilja hosted a high-profile “Swedish–Vietnamese Digital Banking Reception” in Hanoi alongside the Swedish Ambassador (Sweden’s Vilja makes its foray into Vietnam to support digital banking), gathering local banks and fintechs to introduce Vilja’s core platform. This mix of conferences, executive roundtables, and even diplomatic events helps vendors educate the market and build relationships in a culturally resonant way.

  • Strategic Partnerships and Alliances: Given the relational nature of B2B sales in Vietnam, core banking providers often partner with local IT companies, consultancies, and global tech firms to gain market access. Forming a local partnership can lend credibility and on-the-ground support. For example, Vilja’s market entry strategy was to launch with multiple local partners – including FPT Information System (Vietnam’s leading IT integrator), Gimasys, FiinGroup, and Nam Viet Corp – as well as an open banking fintech (Brankas) (Vilja launches strategic local partnerships in Vietnam - Vilja). These alliances provide Vilja with local market knowledge, integration support, and a channel to reach bank clients. Similarly, many established vendors work with local system integrators: Temenos and Oracle have certified partners in Vietnam who implement their core solutions and assist with localization (e.g. ITSS from Switzerland partnered with VIB on its Temenos-on-AWS project (VIB drives digital banking innovation with Temenos’ latest version of banking platform powered by AWS) (VIB drives digital banking innovation with Temenos’ latest version of banking platform powered by AWS)). Core banking providers also align with global technology partners as part of marketing – cloud providers especially. Co-marketing with Amazon Web Services or Microsoft is now common, highlighting cloud readiness. A recent example is AWS collaborating in press releases and events for VIB’s core migration (VIB drives digital banking innovation with Temenos’ latest version of banking platform powered by AWS), reinforcing the message that Vendor X + Cloud Y can safely transform a Vietnamese bank. Partnerships with management consultancies (Deloitte, PwC, etc.) also help vendors get onto banks’ RFP shortlists via consultants’ recommendations.

  • Content Marketing and Thought Leadership: Core banking decisions are high-stakes for banks, so vendors deploy extensive content marketing to build thought leadership. Whitepapers, case studies, webinars, and research reports are tailored to address banks’ pain points. For instance, 10x Banking commissioned a global study on digital transformation, which included Vietnam, to generate insights and urgency around core modernization (10x Banking announces APAC expansion plans) (10x Banking announces APAC expansion plans). They found less than 8% of APAC banks were focusing on core systems and publicized that 94% of surveyed Vietnamese bankers felt slow tech upgrades cost them customers (10x Banking announces APAC expansion plans). By publishing these findings and an industry report, 10x creates a narrative that modern core technology is the key to winning new customers – subtly marketing their solution as the remedy. Other vendors maintain blogs and resource centers in both English and local language, discussing topics like open banking APIs, real-time processing, cloud security compliance, etc., to educate bank IT teams. Webinars are another channel: during COVID-19 especially, vendors held virtual panel discussions (often featuring a client from another country) to reach Vietnamese bankers online. For example, Temenos ran webinars on “Journey to Cloud and SaaS – Motivations for ASEAN banks” (TRF 2023 ASEAN: Panel Discussion - Journey to Cloud and SaaS), implicitly promoting its cloud core via educational content. This thought leadership approach helps build trust and brand recall over the long B2B sales cycle.

  • Targeted Digital Marketing: While mass advertising is rare in this niche, vendors do use targeted digital channels. LinkedIn is heavily utilized – many firms run sponsored posts targeting Vietnamese bank CXOs or share success stories (e.g. posts celebrating a new core go-live or an award from IDC). Vendors like Mambu and Thought Machine also localize their websites and SEO content for Vietnam (for instance, featuring Vietnamese client case studies like TNEX or HD Bank on their homepage). Some run email newsletters or account-based marketing campaigns aimed at specific banks’ leadership, sharing relevant insights. Local media PR is another tactic: press releases about core banking deals are sent to Vietnamese financial newspapers (e.g. Vietnam Investment Review, banking journals). These often get published as articles, amplifying the vendor’s message in an “official” source. For example, multiple outlets covered SHB’s selection of Temenos for a digital upgrade, including quotes on how Temenos’s open platform will help SHB become Vietnam’s leading digital bank (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade) (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade). Such media coverage both advertises the vendor’s win and provides social proof to other bank executives reading about a peer’s decision.

  • Direct Sales & Relationship Management: Despite all the marketing collateral, core banking sales ultimately rely on direct engagement with bank decision-makers. Vendors typically maintain a regional sales team (often based in Singapore or Vietnam) that builds relationships over months or years. These sales leads arrange demos, respond to RFPs, and coordinate proof-of-concept (POC) projects. In Vietnam, building trust is crucial – vendors often engage at the C-suite level through many meetings and maybe even informal networking (dinners, etc. facilitated by partners or industry associations). An example strategy is to pilot a limited solution for the bank (say a digital bank sandbox or a specific module) to prove value before a full core replacement commitment. Customer reference visits are another powerful tool: Vietnamese bank executives may be taken to visit a successful core banking implementation in another country or hear directly from a peer bank’s experience. Established vendors leverage their existing Vietnamese clients as references; new vendors leverage success stories from similar emerging markets. For instance, a neo-core vendor might connect a prospective bank with a reference from an Indonesian or Philippine bank that used their platform to launch a digital bank, highlighting parallel market conditions. This peer validation can be more persuasive than any brochure. Additionally, local support assurances are part of the sales pitch – vendors will emphasize their Vietnam-dedicated support teams or training of local IT staff, to mitigate concerns about relying on a foreign tech provider.

In summary, core banking solution marketing in Vietnam is multi-channel and trust-oriented. It blends high-level branding and thought leadership (to shape industry perception) with ground-level relationship building and partnerships (to navigate the local business culture and execution needs). Importantly, the approach can vary when targeting a large traditional bank versus a newer digital bank venture – as discussed in the next section on B2B vs B2C marketing differences.

B2B vs. B2C Marketing Approaches in this Space

Core banking solution providers operate in a B2B context, selling technology to banks (enterprise customers). Thus, their marketing strategies differ fundamentally from the B2C marketing that banks themselves use to attract retail consumers. It’s important to distinguish these approaches, especially since neo-core vendors often need to understand both – they market B2B to banks, but must appreciate banks’ own B2C priorities to align their value proposition.

B2B Marketing (Core Banking Providers → Banks): This is characterized by narrow targeting, high-touch engagement, and emphasis on expertise and ROI. Vendors marketing to banks focus on a small audience of key decision-makers (typically the bank’s CIO/CTO, COO, CEO, and Board for big decisions). Communication is therefore more personalized and information-rich rather than broad and promotional. Key traits of B2B marketing here:

  • Technical & Business Content: Messaging revolves around how the core platform improves the bank’s operations – e.g. “reduce IT costs by X%, enable Y new products per year, ensure regulatory compliance”. Whitepapers, RFP documents, and proposals include detailed specifications, integration plans, and case studies. The tone is relatively formal and metrics-driven. For example, a vendor might demonstrate how their core can handle a certain TPS (transactions per second) or how it improved another bank’s customer acquisition by 20% after enabling faster product launches. This rational evidence is crucial for bank committees evaluating vendors.

  • Relationship and Reputation Focus: Purchasing a core system is a long-term decision (10+ year impact), so banks look for trusted partners. B2B marketing highlights the vendor’s track record and reliability. Established providers like Temenos or Oracle leverage their large install base (“X of the top 5 banks in Vietnam run on our core” is a strong message) (Oracle FS signs new core banking client in Vietnam, Kien Long Bank). Newer providers build credibility by showcasing prominent global clients (e.g. 10x cites its success with JPMorgan’s Chase UK to signal stability). Marketing in this realm often involves reference selling – connecting potential clients with existing ones – and thought leadership to convey, “We understand banking as deeply as you do.” The decision process can take months of due diligence, during which the vendor’s consistency and expertise (in demos, answers, etc.) essentially markets their reliability.

  • Channels: As noted, conferences, private meetings, industry press, and direct sales are key channels. You won’t see a core banking vendor airing TV commercials or billboard ads targeting the general public in Vietnam – that would be wasted effort in B2C space. Instead, they might sponsor a closed-door executive summit or produce a Vietnamese-language thought piece in a banking journal. Digital channels like LinkedIn are used but in a targeted manner (e.g. sponsoring content on the LinkedIn feeds of people who list roles at Vietnamese banks). The scale is smaller but the impact per contact is larger in B2B.

In contrast, B2C Marketing (Banks → Consumers), particularly for digital banking services, is broad-based and emotion/brand-driven. For instance, a digital bank like Timo or Cake markets to millions of end-users, using consumer-friendly messaging about convenience, rewards, and lifestyle. Key features of B2C in banking:

  • Mass Reach & Brand Building: Banks run TV commercials, social media campaigns, influencer partnerships, and promotions to build brand awareness among the public. For example, Timo has set up physical “hangout” lounges in popular retail outlets (McDonald’s, 7-Eleven) where young consumers can sign up for an account on the spot (Timo | Mambu). This is a very different tactic than anything a core vendor would do – it’s about acquiring thousands of customers quickly through convenience and cool branding.

  • Simplicity of Message: While a core vendor might talk about microservices and API architectures to a bank, the bank’s B2C marketing will be simplified to “Open an account in 5 minutes from your phone” or “0% fees, 5% cashback on purchases.” The focus is on customer benefits, not technical details. Digital banks will emphasize user experience, trust, and financial well-being in their marketing to consumers, often leveraging storytelling or aspirational themes.

  • Channels: B2C banking marketing uses social media (Facebook, Zalo, TikTok in Vietnam), online ads, billboards, PR stunts, referral programs, etc. For instance, new digital bank Cake by VPBank ran online referral campaigns and partnered with a ride-hailing app (Be) to rapidly grow its user base. These are high-volume, automated marketing tactics – a stark contrast to the individualized sales pitches of B2B.

Why does this matter to core solution providers? Because while core providers don’t do B2C marketing themselves, their B2B pitch must connect to B2C outcomes that banks care about. In other words, a vendor should market its platform in terms of how it will enable the bank’s own marketing and growth. For example, vendors often highlight that their core system allows banks to launch new products in weeks instead of months, enabling a faster response to consumer trends (a competitive edge in B2C). Temenos explicitly markets how its open APIs and microservices help banks deliver “personalized and AI-supported customer journeys” across mobile and internet channels (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade) – essentially linking the core technology to a superior customer (B2C) experience. Similarly, 10x Banking’s materials talk about improving agility so banks can address the “huge deficit of accessible customers” in regions like Southeast Asia (10x Banking announces APAC expansion plans) (10x Banking announces APAC expansion plans).

In summary, B2B marketing in core banking is about selling a partnership and capability, often quite technical and trust-based, whereas B2C marketing by banks is about selling an experience or lifestyle to end-users. A successful core banking provider needs to excel at the former, while understanding the latter. Neo-core vendors in particular often differentiate themselves by showing they understand digital banks’ B2C needs better than the old guard. For instance, Mambu’s case study on TNEX highlights how its cloud core let TNEX focus on “solving real-life customer problems” instead of infrastructure (Vietnam’s first digital-only bank TNEX | Mambu) (Vietnam’s first digital-only bank TNEX | Mambu) – a subtle jab at legacy cores, framed in terms of end-customer value. By speaking the language of both technology and customer-centric outcomes, core vendors strengthen their B2B appeal in this space.

Competitive Positioning and Market Dynamics

The competitive landscape for core banking solutions in Vietnam can be viewed in two segments: incumbent “legacy” vendors vs. new “neo-core” vendors, each with different positioning, and the banks segmented by size/maturity which they target. Market dynamics are shaped by both groups jostling for upcoming core projects, often with distinct value propositions:

  • Incumbent Vendors (Temenos, Oracle, etc.) – Positioning: The long-standing providers emphasize their proven track record, comprehensive functionality, and existing local user community. Their selling point to conservative bank boards is often, “We are a safe choice – many of your peers run our system successfully.” For example, Temenos can claim a leadership position with ~12 Vietnamese banks already on T24 (CORE banking of commercial banks in Vietnam), backing its proposals with local case studies (e.g. Techcombank’s multi-year growth on Temenos, or Sacombank’s nationwide deployment). This installs confidence that the vendor understands Vietnamese regulations (like VND currency handling, SBV reporting standards) and has local support resources in place. Technically, these vendors also position on breadth and depth: their core systems have a wide range of modules (retail, corporate, payments, trade finance, etc.) and decades of product maturity. This is attractive to large banks that want an all-in-one solution. Many legacy vendors now also underscore their modernization: e.g. Temenos and Oracle both highlight new cloud or SaaS offerings and flexible API layers to shake off the “old legacy” image. Oracle’s marketing for Flexcube in Vietnam, for instance, pitches it as enabling a “modern and friendly digital bank” transformation (Oracle FS signs new core banking client in Vietnam, Kien Long Bank) (Oracle FS signs new core banking client in Vietnam, Kien Long Bank), not just a back-end processor. In short, the big players position as stable yet innovative enough, leveraging their scale. They often cater their approach by bank tier: Tier-1 banks (like Vietcombank or state banks) might even get offers for a bespoke solution or private cloud setup, whereas mid-tier banks get a more standardized package.

  • Neo-core Vendors (10x, Thought Machine, Mambu, etc.) – Positioning: The newer entrants differentiate themselves by agility, flexibility, and cost-effectiveness. Their narrative often casts them as the challengers to “expensive, monolithic legacy cores.” They highlight features like cloud-native architecture, real-time processing, microservices, open APIs, and easy scalability. For example, Thought Machine’s Vault platform is built around smart contracts which allow unparalleled product design flexibility – a key selling point to banks aiming to offer novel products quickly. When HD Bank chose Vault, the bank noted the platform’s “unique flexibility and control” enabling it to design innovative services at scale (HD Bank announces strategic collaboration with Thought Machine to transform banking in Vietnam) (HD Bank announces strategic collaboration with Thought Machine to transform banking in Vietnam). Neo-core providers also tend to offer subscription pricing (SaaS) or usage-based models, which can lower upfront costs for the bank. This is attractive for smaller banks or digital offshoots that don’t want the large CapEx of a traditional core license. Moreover, these entrants often target specific niches to get a foothold: Mambu, for instance, zeroed in on digital banks and finance startups in Vietnam (winning TNEX and Timo) before attempting to persuade larger incumbents. Their positioning is “we enable speed” – TNEX was able to launch Vietnam’s first digital-only bank entirely in the cloud, avoiding both an in-house build and a traditional core purchase, by selecting Mambu (Vietnam’s first digital-only bank TNEX | Mambu) (Vietnam’s first digital-only bank TNEX | Mambu). This success story is now a part of Mambu’s competitive positioning to win other ASEAN neobank projects. Neo-core vendors also align with broader market trends like financial inclusion and open banking – for example, 10x emphasizes how a modern core can help Vietnamese banks tap the underbanked 70% of the population by quickly rolling out inclusive digital services (10x Banking announces APAC expansion plans) (10x Banking announces APAC expansion plans). Such messaging resonates with banks that have mandates to grow outreach or meet digital transformation KPIs set by regulators/shareholders. In essence, new vendors position as enablers of transformation – the choice for banks that want to leapfrog competitors with technology (versus legacy vendors positioning as the dependable choice to keep up with the pack).

  • Local vs Foreign Angle: While virtually all core platforms in play are foreign-developed, the local dimension comes via service and customization. Vendors know that to compete in Vietnam, they must check the “local presence” box. Thus, part of competitive positioning is proving commitment to the Vietnamese market. Oracle and Temenos have had offices or at least long-term partnerships in Vietnam for years – a comfort factor. New players like Vilja are explicitly announcing localization efforts (local support center in KL plus Vietnamese partnerships) (Vilja launches strategic local partnerships in Vietnam - Vilja) (Vilja launches strategic local partnerships in Vietnam - Vilja). Banks often ask about post-implementation support: Will there be Vietnamese-speaking support? How fast can issues be resolved? Vendors compete on this by training local partners/certified engineers and, in some cases, establishing a direct support center in Vietnam. A vendor that can claim a larger local ecosystem (more IT firms trained on their system, more local certified developers) has an edge in competitive bids – it reduces perceived vendor lock-in risk.

  • Market Share and Shifting Dynamics: According to data from the mid-2010s, Temenos held the largest share of Vietnamese core banking systems (~37.5%), followed by Oracle (~25%), then Fiserv (~9%) and others like SunGard/FIS and Hyundai IT around 6% each (CORE banking of commercial banks in Vietnam). Those figures reflected the first generation of core modernization in Vietnam (when many banks installed these systems). The current trend shows market share in flux as older systems reach replacement cycles and new projects arise. For example, SHB (Saigon-Hanoi Bank) replaced its legacy Polaris core with Temenos in 2022 to pursue a digital-first strategy (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade) (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade). Kienlong Bank in 2022 picked Oracle Flexcube over competitors (Oracle FS signs new core banking client in Vietnam, Kien Long Bank) (Oracle FS signs new core banking client in Vietnam, Kien Long Bank) – Oracle could leverage its existing user base of 8+ Vietnamese banks as proof of local suitability (Oracle FS signs new core banking client in Vietnam, Kien Long Bank). Meanwhile, state-owned banks like Agribank and BIDV that had decades-old systems are potential opportunities in coming years; these large deals will pit top legacy vendors and perhaps big-tech solutions against each other.

The neo-core segment has started to claim its first few wins, which can lead to momentum. Thought Machine’s partnership with HDBank was a landmark – a top-10 bank choosing a startup-born core over the likes of Temenos was almost unthinkable a few years prior. That case will be watched by others: if it succeeds (HDBank’s “Vikki” digital bank launch in 2024 is a positive early sign, with 15k users and $15m transactions in a few months (HD Bank launches Vikki Digital Bank in Vietnam powered by Thought Machine’s Vault Core) (HD Bank launches Vikki Digital Bank in Vietnam powered by Thought Machine’s Vault Core)), more mid-large banks may consider neo-core options. Also, Vietnam is likely to see new digital banking licenses or spin-offs as the central bank encourages innovation. Neo-core vendors clearly dominate that sub-market – every digital-only banking project so far (Timo, TNEX, Cake, etc.) has used a modern cloud core (Mambu, in those cases). Incumbent vendors are responding by offering “bank-in-a-box” or SaaS versions of their core for fast digital launches, trying not to cede the space entirely to newcomers. For example, Temenos introduced a SaaS model and could pitch that to any new digital bank consortium in Vietnam, leveraging its brand but with a cloud twist.

Another dynamic is complementary competition: core vendors often collaborate or compete with digital banking front-end providers (like Backbase, EdgeVerve, etc.) in deals. While not core systems themselves, these front-end platforms sometimes bundle with core projects. A neo-core vendor might partner with a front-end solution to offer a full package to a new bank. This is more of a product strategy dynamic, but it influences marketing – vendors may jointly market a turnkey digital bank solution (core + mobile app + card system), appealing to banks that want one-stop solutions.

Finally, competitive positioning is influenced by how each vendor addresses key concerns of Vietnamese banks: cost, risk, and regulatory compliance. Legacy vendors often highlight that “no one gets fired for buying [established vendor]”, implying lower risk, and they emphasize robust local compliance modules (e.g. built-in SBV reports, VND handling quirks). Neo-core vendors counter by offering trial periods, phased implementations, and showcasing superior TCO (Total Cost of Ownership). For instance, a cloud core might show cost benefits over 5 years versus an on-prem system (no hardware or DB license costs, pay per use). We see competition also in performance and scalability claims, as Vietnam’s banks have large customer bases – vendors will assure they can handle millions of accounts and high transaction loads (often via benchmarks or existing large clients in other countries).

In summary, the Vietnamese core banking market is highly competitive with clear leaders but also ripe openings for challengers. Established foreign vendors leverage their historical success and broad solutions, while new entrants leverage cutting-edge technology and new economic models. The market is in a state of renewal: as banks aim for digital transformation, many are willing to reconsider their core provider, making vendor agility and value delivery more important than sheer legacy presence. This creates a landscape where a UK neo-core platform like 10x, despite being new to the region, can compete if it plays to its strengths and addresses local needs head-on.

Customer Behavior and Purchasing Decision Drivers in Vietnamese Banks

When Vietnamese banks evaluate core banking solutions, several key factors and behaviors drive their decision-making. Understanding these drivers is crucial for any provider entering the market:

  • Regulatory and Compliance Fit: Banks give high priority to whether a core system can meet local regulatory requirements out-of-the-box. The State Bank of Vietnam has specific reporting formats, account treatment (e.g. for state-subsidized loans, priority sectors), and lately, mandates around open API frameworks and data localization. Vendors that demonstrate familiarity with SBV regulations and have modules for VND currency peculiarities, tax calculations, etc., gain an edge. For instance, a system that already supports Vietnam’s national ID eKYC guidelines or local payment networks (NAPAS) will be viewed favorably. This is why having existing Vietnamese clients is so powerful – it implies the solution has been vetted for compliance. New entrants often mitigate this by partnering with local firms to adapt their software to local rules (as Vilja is doing for open API compliance) (Vilja launches strategic local partnerships in Vietnam - Vilja) (Vilja launches strategic local partnerships in Vietnam - Vilja). Additionally, regulatory risk aversion means banks tend to trust vendors with a long-term presence; they worry less about continuity if the vendor is known to regulators. It’s notable that even the central bank (SBV) chose Temenos T24 for its internal systems (CORE banking of commercial banks in Vietnam), likely due to confidence in that vendor’s compliance track record.

  • Strategic Alignment (Digital Transformation Goals): Vietnamese banks differ in their strategic vision – some prioritize aggressive digital growth, others are more conservative. Their core selection aligns with this. A bank with a bold digital strategy (e.g. aiming to be “number one in digital banking by 2025” like SHB) will look for a core that enables rapid product development, omni-channel support, and advanced analytics integration (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade) (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade). This was evident in SHB’s choice of Temenos for its open architecture and API-rich platform to support personalized customer journeys (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade) (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade). Banks aiming to launch digital subsidiaries (like HD Bank) will consider very modern cores, as we saw with Thought Machine. In contrast, a bank whose immediate goal is to consolidate and improve reliability (perhaps some smaller or rural banks) might value a tried-and-true system with strong branch functionality and uptime over fancy digital features. In Vietnam’s market, however, even the traditionally cautious banks are feeling pressure to digitize due to competition and a young customer base. Thus, an overarching driver is the desire for a core system that can future-proof the bank – supporting not just current needs but also new business models (like embedded finance, partnerships with fintechs). Banks often explicitly ask vendors how their roadmap aligns with emerging trends (e.g. “How will your platform help us connect with e-wallets or fintech APIs?”). A vendor that can articulate this alignment – say, providing sandbox environments for fintech collaboration or having existing open banking implementations – will influence the decision.

  • Total Cost of Ownership (TCO) and ROI: Cost is a significant consideration, but Vietnamese banks evaluate it in a nuanced way. Initial license price matters, especially for mid-sized banks with limited IT budgets, but they also consider long-term costs of maintenance, hardware, and upgrades. Many banks have learned from earlier core projects that the cheapest upfront option can become expensive to maintain if not scalable or if vendor support is lacking. Conversely, a higher initial investment can pay off if it reduces manual work or allows quicker rollout of revenue-generating products. Banks will expect a clear ROI projection from vendors. For example, a vendor might show that by using their more automated core, the bank can reduce manual processes and cut operating costs by X%, or that new products launched via a flexible core could add Y billion VND in revenue in 3 years. Local banks often seek financing or phased payment plans for core projects; historically some core implementations were funded by ODA loans or multi-year budgets. Neo-core vendors that offer subscription models (OpEx vs CapEx) have an attractive pitch here – “pay as you grow” resonates with banks that want to avoid a heavy one-time hit. However, banks will scrutinize those subscription costs at scale; they’ll do the math for 5-10 years. If a SaaS core becomes too costly at large volume, that’s a concern. Therefore, the scalability of cost (not just technology) is a driver. Vietnamese banks are growth-oriented – they want to be sure the core platform can economically support doubling or tripling of customers. In proposals, vendors often include benchmarks: e.g., cost per account per year on their platform versus industry average. A lower figure can sway the decision if credibility is established.

  • Technology & Integration Capabilities: Vietnamese banks rarely operate in isolation; they have to integrate core banking with many satellite systems (card processing, mobile banking apps, payment gateways, data warehouses, etc.). Thus, a core solution’s architecture and integration friendliness are key decision drivers. Banks will look at whether the system has open APIs, how it supports real-time data sync, and whether it uses modern architecture (e.g. microservices, containerization) that aligns with the bank’s IT strategy. Many banks in Vietnam now have an “omni-channel banking” goal – they want the core to feed consistent information to mobile apps, internet banking, ATMs, branch tellers in real-time. A system that can operate 24/7 with real-time posting (as opposed to batch updates at end of day) is hugely attractive, given the rise of digital transactions. For example, HD Bank’s CEO explicitly noted the need for “real-time, always-on” services to meet customers’ expectations as a reason for adopting a modern core (HD Bank launches Vikki Digital Bank in Vietnam powered by Thought Machine’s Vault Core). Additionally, if a bank has certain existing investments – say they use an Oracle database, or Microsoft Azure cloud – they might prefer a core that is proven on that stack. Or if they are a Java shop vs .NET shop, that can influence preference. Localization of technology is also practical: does the system support Vietnamese language in interfaces (for developers and operations)? Does it handle Vietnam’s naming conventions, address formats, etc.? These small integration details matter in daily operations and can be asked during evaluation. Vendors who have localized these aspects or can show flexibility (like support for local SMS gateways, integration to Vietnam’s interbank payment switch IBPS, etc.) score points.

  • Vendor Reputation and Support: Trust in the vendor itself – not just the product – is a major driver. Vietnamese banks will consider the vendor’s financial stability, global reputation, and commitment to Vietnam. Many remember cases of problematic implementations (there have been a few public core banking project failures or delays in Vietnam in the past), so they assess the vendor’s project management and execution capability. They will ask for an implementation plan, timeline, and often a guarantee or penalty clause for delays. Vendors who can demonstrate a strong local support structure alleviate concerns. For instance, having a local office or at least a dedicated account manager who speaks Vietnamese and can be on-site is a plus. During the decision process, banks often issue detailed RFPs and expect comprehensive proposals – how a vendor responds (thoroughness, understanding of requirements) significantly impacts perception. A quick, knowledgeable response suggests the vendor is reliable; evasive or generic answers raise red flags. Moreover, references are checked: a bank might privately reach out to another bank’s CIO to ask, “How has your experience with Vendor X been? Do they support you well? Any issues?” A positive reference can clinch the decision, whereas any hint that a vendor under-delivered elsewhere in Vietnam can kill a deal. This informal network effect is strong in Vietnam’s banking community.

  • Customer-Centric Features: As Vietnamese banks become more customer-focused, they also evaluate how a core system will directly enable better customer experiences (which ties back to B2C considerations). They look for capabilities like 360-degree customer view, flexibility to create personalized products, fast onboarding processes, and uptime for digital channels. For example, banks have noted that moving core to cloud can improve uptime and scalability, thus improving the customer experience by avoiding downtime (VIB drives digital banking innovation with Temenos’ latest version of banking platform powered by AWS). A core that can easily interface with CRM systems or comes with built-in analytics on customer behavior might get bonus points. Ultimately, bank executives care about growth and customer satisfaction metrics – they will favor a core solution that demonstrably helps them win and retain customers in Vietnam’s competitive market. This is why TNEX’s team explicitly rejected traditional cores; they wanted to focus on customer-facing innovation without being held back by infrastructure (Vietnam’s first digital-only bank TNEX | Mambu) (Vietnam’s first digital-only bank TNEX | Mambu). Vietnamese banks, especially the leading ones, share that mindset increasingly – technology is seen as a means to deliver superior service quality (a key competitive battleground).

  • Risk Management and Phased Approach: Despite the ambitions, Vietnamese banks are generally cautious about big bang core replacements due to the risk. Many will opt for a phased implementation or a modular approach (e.g. first implement the new core for a pilot segment like a digital sub-brand or a specific product line, then gradually migrate all portfolios). The willingness of a vendor to support a phased or parallel-run approach can influence selection. If one vendor insists on a risky all-at-once cutover whereas another is flexible to phase in modules, the bank may lean to the latter. Risk mitigation features (like robust data migration tools, rollback capabilities, strong training programs) are looked at. Some banks also prefer to see a proof of concept or sandbox demonstration with their own sample data as part of the evaluation – vendors who can accommodate that and show quick results gain confidence.

In essence, Vietnamese banks behave as value-maximizing but risk-aware buyers. They weigh the promise of new technology (digital capabilities, lower cost, better customer service) against the practical realities (regulatory compliance, proven success, support). The decision is typically made by a steering committee that includes business and IT heads, reflecting both business objectives and technical/logistical considerations. A winning vendor must satisfy both sides: the business side’s desire for innovation and ROI, and the IT side’s need for reliability and compliance. This dual expectation is why successful core banking marketing in Vietnam requires addressing each of the drivers above comprehensively. Providers entering this market should be prepared to demonstrate not only that their technology is cutting-edge, but that it is fit-for-Vietnam, comes with trusted support, and aligns with the strategic vision of Vietnamese banks to digitalize rapidly yet safely.

Implications for a New Entrant

For a neo-core banking platform making its first foray into Southeast Asia via Vietnam, the research above carries several important insights:

  • Localize Your Strategy and Build Credibility: However advanced the platform technology is, Vietnamese banks will ask: “Have you done this in markets like ours?” Establish credibility early by leveraging any relevant case studies (even if not in Vietnam – perhaps similar emerging markets or a project with similar scale). Publishing a Vietnamese market study, as 10x did in 2023 (10x Banking announces APAC expansion plans) (10x Banking announces APAC expansion plans), is a good step to show engagement with local issues. Next, securing a local partner or representative is vital. Align with a respected IT firm (like how Thought Machine partnered with consultancy Deloitte in some APAC deals, or Vilja with FPT) to handle onshore support and integration. This addresses the support and compliance comfort factors. Given Vietnam’s relationship-oriented business culture, having a local “face” for 10x (country manager or partnership) will greatly ease interactions. It’s also wise to engage with regulators and industry groups – for example, participating in SBV’s Fintech events or the Vietnam Banking Association’s seminars. Being visible in those circles will help it understand regulatory nuances and signal commitment to the country.

  • Emphasize What Sets You Apart (but in Local Terms): The platform should craft its marketing messages around the specific pain points Vietnamese banks have. For instance, banks are grappling with core systems that struggle to support 24/7 digital services; It can highlight its platform’s “always-on, real-time processing” which eliminates downtime windows – a critical advantage in a country where mobile banking usage peaks outside traditional hours. Banks also worry about scaling to millions of new users (with the rapid growth of cashless payments); It can use its experience with large deployments to promise “massive scalability without performance loss”. Essentially, match it’s strengths to the drivers: if agility is a strength, frame it as “launch new products tailored to Vietnam’s young consumers in weeks, not months” – linking agility to capturing market opportunities like the unbanked segment. If integration is strong, maybe tout how it’s open APIs could help a bank integrate with Vietnam’s booming e-wallet and fintech ecosystem easily, enabling embedded finance use cases. The key is to avoid generic global platitudes and speak to Vietnam-specific opportunities (e.g. the stat of 70% underbanked (10x Banking announces APAC expansion plans) and how it can help a bank profitably serve them via cloud economics).

  • Leverage Content and Success Stories: As a newcomer, it should double down on thought leadership marketing to educate banks on why a next-gen core is timely. Whitepapers or webinars on topics like “Core Banking 2.0 for the Digital Age in Vietnam” or “How Cloud Core Banking Drives Financial Inclusion” can spark conversations. Including analysis of Vietnamese consumer trends (e.g. high smartphone usage, multi-channel expectations (Vietnam’s Saigon-Hanoi Bank taps Temenos for digital upgrade)) and tying that to core tech requirements will position it as an expert, not just a vendor. Additionally, showcasing case studies from its global clients (in UK, Australia, etc.) in a way that draws parallels to Vietnam will be useful. Perhaps a case about enabling Chase UK to win younger customers – Vietnamese banks similarly want to win Gen Z, so illustrate how it helped deliver personalized banking that attracted young users. Where possible, secure testimonials or references that potential Vietnamese clients can speak with. Even one marquee pilot in Asia (maybe it can target a forward-thinking mid-size bank in Vietnam or a digital banking license applicant) can then serve as a springboard for broader adoption.

  • Focus on Partnerships and Ecosystem: Entering Vietnam, it should view partnerships not just as a marketing channel but as a competitive necessity. Partner with implementation specialists like KPMG or local fintech consultancies that often advise banks on core selection – ensuring they are familiar with its offering can get it onto RFP shortlists. Also consider cloud alliances: for example, demonstrating it on AWS or Google Cloud with local data center options, since banks like VIB are now comfortable with AWS (VIB drives digital banking innovation with Temenos’ latest version of banking platform powered by AWS). A joint AWS workshop for banks on cloud core banking could harness AWS’s reputation to bolster. Partnerships with fintech API providers (similar to how Vilja partnered with Brankas for open banking (Vilja launches strategic local partnerships in Vietnam - Vilja)) could also differentiate itself by showing it comes with an ecosystem of ready integrations (payments, credit scoring, etc.), reducing integration headaches for banks.

  • Address Risk and Support Concerns Proactively: Knowing banks are risk-averse, it should propose safe adoption paths – for instance, encourage a phased approach where the bank can run it in parallel for a new product line before full migration. Offering a detailed migration plan, local training for bank IT, and perhaps even performance guarantees will reassure banks that choosing a newer vendor is not riskier than a legacy one. If it can cite meeting stringent requirements for regulators in other markets, mention that to build confidence (even better, volunteer to engage with the bank’s risk and compliance teams early to answer questions). In proposals, explicitly outline how it will handle SBV reporting, data residency, business continuity, etc., to remove those doubts upfront.

  • Competitive Awareness: Finally, it should be prepared to encounter the incumbent competitors’ tactics. Legacy vendors might offer deep discounts to keep it out, or highlight any lack of local footprint as a weakness. Its counter must be the value of true transformation – i.e. quantify the benefits of moving to its platform versus sticking with a slightly cheaper upgrade of an old one. Often the selling point is that a bank could spend, say, 80% of the cost of a new core just upgrading their old system, and still not get the flexibility of a its solution. So why not make the leap? Additionally, emphasize the support from start to finish: even as a new player, it can shine by being more attentive and agile during pre-sales and implementation, compared to perhaps more bureaucratic large vendors. Early adopter clients will value the extra hand-holding and custom attention a firm can provide. This boutique approach can turn a potential weakness (new in market) into a perceived strength (they will go the extra mile for us).

In conclusion, Vietnam presents a promising yet challenging market for core banking platforms. Marketing strategies must be comprehensive – blending on-the-ground relationship building with persuasive evidence of capability. By leveraging the channels and insights outlined – from partnerships and thought leadership to tailoring messages around local drivers – a neo-core provider can position itself strongly. The prize is significant: Vietnamese banks are hungry for modern solutions as they race to digitalize, and those solution providers that earn their confidence stand to gain long-term, high-value clients in this burgeoning market.

Sources

越南核心銀行市場, 行銷策略與競爭格局

越南的銀行業正快速數位轉型,為核心銀行解決方案供應商帶來新機會。既有的「傳統」核心銀行供應商與新興的「Neo-core」金融科技競爭者皆致力於協助越南的傳統銀行與新興數位銀行現代化其技術基礎。此報告提供市場概覽、探討在B2B金融科技領域常見的行銷管道與客戶取得策略,分析本地與外國核心銀行供應商的競爭態勢(含市場佔有率與定位),並檢視越南銀行的採購行為與決策驅動因素。內容特別為首次進入東南亞市場的Neo-core平台量身打造,提供其行銷與競爭建議。

越南核心銀行市場概況

越南擁有多樣化的銀行體系,包括大型國有銀行、股份制商業銀行、外國銀行分行以及新興的數位銀行。幾乎所有越南銀行在過去20年內都已實施現代核心系統,主要因應交易量快速成長與全球化競爭壓力。銀行目前的關鍵策略優先事項包括:法規合規、資產品質提升、以客戶為中心、數位融合,以及因應新興競爭對手。

儘管如此,許多銀行仍使用過時的核心系統,缺乏自動化、數據分散且維護成本高昂。隨著銀行追求即時、全天候數位服務,升級核心系統的壓力日益加劇。

調查顯示,高達94%的越南銀行高層認為數位轉型遲緩導致新客戶流失。再加上越南超過70%人口為35歲以下,且智慧型手機滲透率接近90%,促使銀行加速現代化。

越南央行(SBV)支持數位創新,鼓勵使用雲端技術與開放API。例如,VIB成為越南第一家使用AWS雲端運行核心系統的銀行,顯示監管機構對雲端核心的開放態度。

另一方面,數位純網銀如TNEX(由MSB創立)、Timo,以及HDBank的數位子品牌「Vikki」,皆選擇Neo-core平台作為其基礎系統,呈現出市場需求的兩極化:傳統銀行升級舊系統,數位銀行尋求靈活、快速部署的新一代核心方案。

越南主要核心銀行供應商概覽

越南的核心銀行市場由本地與國際供應商共同構成,但技術主導地位主要由外國廠商掌握。以下列出主要解決方案供應商(含傳統與Neo-core),其來源、知名用戶、及市場佔有情況:

供應商(來源) 核心平台名稱 越南代表客戶 市場佔有率/存在度 競爭定位
Temenos(瑞士) T24 Transact Techcombank、Sacombank、MB、OCB、SeABank、SHB等 約37.5%(領導地位) 強大在地實績,開放架構,支援微服務與API,適用數位轉型
Oracle FSS(美國) Flexcube ACB、LienViet、OceanBank、TPBank、VietCapital、VRB等 約25% 多模組整合強大,結合Oracle生態系統,廣泛中型銀行客戶群
FIS / SunGard(美國) Systematics/Ambit HDBank(舊)、SaigonBank等 約6% 主要經由併購進入,現偏向維護既有客戶
Fiserv(美國) Signature/原OSI核心 ACB(原OSI核心) 約9.4% 中等佔有率,功能完善,未近年擴展
Silverlake(馬來西亞) SIBS Vietcombank、BIDV、Maritime Bank 少數幾家大型銀行採用 區域性供應商,於國有銀行系統具實績
Infosys Finacle(印度) Finacle Eximbank等 極少數導入 亞洲領先平台,但在越南拓展有限
TCS BaNCS(印度) BaNCS ANZ越南(舊)、Southern Bank(歷史導入) 小規模存在 強調多法人支援與靈活性
Hyundai IT(韓國) iPCAS Agribank 約6.3% ODA專案導入,適合高交易量場景
Polaris / Intellect(印度) Intellect Core(原Polaris) SHB(舊) 小型存在 正逐步被新系統取代
Mambu(德國) Cloud Core(SaaS) TNEX、Timo等數位銀行 新興強勢進入 雲端原生,部署快速,按需收費,數位銀行首選
Thought Machine(英國) Vault HDBank/Vikki 新進者 智能合約架構,24/7即時,支援大型轉型
10x Banking(英國) SuperCore(雲端原生核心) 尚未有越南客戶 初入市場 英美客戶為證,擁有強大彈性與擴展性,專攻高成長市場
Vilja(瑞典) Vilja Core(組合式平台) 尚未落地,2025年透過本地夥伴推動 新進者 結合FPT、Brankas等在地化策略,專攻中小型與數位銀行客群

核心銀行供應商的行銷管道與策略

供應商於越南市場採取的行銷策略,偏重B2B模式,並強調產業信任、專業形象與在地合作。

行銷管道包括:

  • 產業論壇與活動:如Temenos、Vilja等皆於越南舉辦銀行科技論壇,展示創新案例並接觸C級主管。
  • 策略夥伴與系統整合商:與FPT、CMC、Gimasys等本地IT服務商合作,提升在地化能力與實施支援。
  • 內容行銷與思想領導:出版白皮書、案例研究、線上研討會、客戶成功故事,教育市場並建立信任。
  • 數位與社群媒體推廣:利用LinkedIn進行精準廣告,發佈成功案例吸引銀行決策者目光。
  • 直銷與人脈經營:高接觸度的面對面銷售,包含多次簡報、POC演示與與業界關係人互動。

B2B vs B2C 行銷策略差異

核心銀行平台皆屬B2B性質,供應商面對的客戶為銀行本身,而非終端消費者。然而,成功的供應商會理解並連結銀行的B2C目標,將自家產品定位為提升用戶體驗與加速產品上市的關鍵使能器。

  • B2B重點:專業內容、專案ROI、實施能力、與銀行決策者建立信任。
  • B2C重點(銀行對消費者):品牌形象、簡便體驗、社群媒體、生活化推廣。
  • 連結兩者:強調核心系統能支援銀行快速推出B2C創新,提升用戶黏著與成長。

越南市場競爭格局

傳統供應商定位:

如Temenos、Oracle等強調其成熟穩定、全面模組與本地案例豐富,爭取保守銀行與大型國有銀行客戶。

Neo-core供應商定位:

如10x、Thought Machine、Mambu強調其靈活性、雲端原生架構、開放API與低TCO,瞄準數位銀行與轉型中的中小型銀行。

當地合作與技術在地化

無論是外資或新創供應商,皆需展示本地支援與合規能力,並在提案中強調SBV法規對應、VND幣別支援、資料主權等本地化要素。

銀行採購行為與決策驅動因素

  1. 合規與在地化能力:能否內建SBV報表、支援eKYC、本地支付接口等。
  2. 數位轉型願景對齊:是否能支援快速產品創新、API整合與即時處理。
  3. 總成本與投資回報:一次性費用與長期維運成本、SaaS計價可擴展性。
  4. 技術靈活性與整合性:是否具備微服務、雲原生、模組化、易與CRM與支付整合。
  5. 供應商聲譽與支援能力:是否有在地辦公室、成功案例、專業實施團隊。
  6. 用戶體驗與B2C使能:能否提供360度客戶視圖、個性化產品與行動優先體驗。
  7. 風險可控與分階段導入:是否支援POC試行、模組式遷移、導入顧問與遷移工具。

建議行銷策略

  • 建立本地合作夥伴,強化法規與支援信任感
  • 利用全球案例建立品牌權威,強調經驗的類似性
  • 發表本地洞見與白皮書,例如「越南核心轉型機會報告」
  • 主動參與本地產業論壇與金融科技協會活動
  • 採用分階段推廣策略,例如先支援銀行推出數位子品牌,再逐步全行部署