ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

我们团队现在都在用哪些技术栈?

我们团队现在都在用哪些技术栈? 目录1. 前端2. 移动端3. 后端4. 数据存储PostgreSQLOpenSearch文件存储5. AI 服务私有化模型接入Microsoft Foundry 接入6. 模型层7. 代码管理与 CI/CD8. 部署与运维9. 传统开发工具10. AI 编程工具作为一名从事 IT 技术工作的老兵今天想分享一下我们团队目前项目中实际使用的一些技术栈。就按照一个项目从前到后从前端、后端、数据存储到 AI 服务、模型再到部署运维依次来看。1. 前端前端主要包括Web 网页和 H5。目前主要使用 TypeScript进行开发前端框架以VueReact这两个框架目前项目中都有在使用也是我们 Web 前端开发的首选。2. 移动端移动端主要使用Flutter。Flutter 使用Dart语言开发一套代码可以同时构建iOSAndroid对于需要同时维护 iOS 和 Android 两个平台的项目来说可以原生体验同时减少不少重复开发工作。3. 后端后端主要使用C#语言开发框架使用ASP.NET Core Web API主要负责后台业务逻辑以及向前端和 App 提供 API 接口。数据库访问目前采用EF Core Dapper根据不同的业务场景选择不同的数据访问方式而不是完全依赖一种 ORM。用户认证和账号体系则主要基于ASP.NET Core Identity。4. 数据存储数据存储这一块目前主要包括关系型数据库、搜索与文档数据以及文件存储。PostgreSQL关系型数据库主要使用PostgreSQLPostgreSQL 也是我个人非常推荐的一款数据库。我从2019 年开始接触 PostgreSQL在此之前项目基本一直使用 SQL Server。自从开始使用 PostgreSQL 之后后续很多项目也逐渐转向了它。OpenSearch搜索和文档数据主要使用OpenSearchOpenSearch搜索引擎是Elasticsearch的一个分支自2021年1月起由亚马逊维护。在我们的项目中OpenSearch 主要承担全文检索、文档数据查询同时也承担 RAG 场景中的部分检索能力。目前主要使用两种召回方式BM25基于关键词的相关性检索k-NN基于向量相似度的近邻检索在 RAG 场景中会结合BM25 k-NN进行混合召回。召回后的候选结果再交给独立的Reranker 模型重新计算相关性分数并进行精排最后选择相关度更高的内容提供给大模型。整体流程可以简单概括为BM25 k-NN 混合召回 → Reranker 精排 → Top K → 大模型生成文件存储项目中的图片、附件以及其他文件主要使用Azure Blob Storage用于统一存储和管理项目中的各类文件资源。5. AI 服务目前项目中的 AI 服务主要分为两部分。私有化模型接入一部分 AI 服务接入我们自己私有化部署的模型。对于有数据安全、成本或者本地运行需求的场景会优先考虑使用私有模型。Microsoft Foundry 接入另一部分 AI 服务通过 Microsoft Foundry接入云端模型和相关 AI 能力。 在实际业务中会结合 Microsoft Agent Framework实现 Agent、工具调用、RAG 等能力并根据不同场景选择私有模型或 Microsoft Foundry 中的云端模型。 目前整体形成两种模型接入方式 私有化模型接入 Microsoft Foundry 云端接入6. 模型层底层模型主要分为云端模型和私有部署模型。云端模型主要通过Microsoft Foundry进行接入和使用。私有模型主要部署在NVIDIA DGX Spark模型主要来自Hugging Face 开源模型在私有模型的加载和运行过程中也会使用Transformers、PyTorch等相关技术。所以目前模型层整体形成了Microsoft Foundry 云端模型 NVIDIA DGX Spark 私有模型也就是一种“云端模型 私有模型”相结合的使用方式。7. 代码管理与 CI/CD源代码管理使用GitHub项目的自动构建和部署主要使用GitHub Actions从代码提交、构建到部署很多流程都已经通过 GitHub Actions 自动化完成。8. 部署与运维项目目前主要部署在Azure 云服务上。服务器主要使用UbuntuWeb 服务使用Nginx作为反向代理。HTTPS 证书使用 Lets Encrypt 提供的免费证书。团队规模比较小所以目前没有使用 Kubernetes。日志、监控等运维能力主要依赖Azure 提供的相关服务。9. 传统开发工具日常开发除了上面的技术栈也会使用一些开发和调试工具。Visual Studio主要用于 C#、ASP.NET Core 等 .NET 项目的开发和调试Visual Studio Code主要用于前端、脚本以及一些轻量级开发场景ngrok一款内网穿透工具可以将本地服务临时映射到公网。在跨网络调试 API、Webhook 或第三方回调时非常方便。即使公司本地服务器没有公网 IP也可以通过 ngrok 临时生成一个公网访问地址供外部系统访问。这些工具基本覆盖了日常的代码开发、本地调试以及外部服务联调场景。说句实话现在用Copilot CLI都很少打开开发工具了以后开发IDE都有可能消失10. AI 编程工具最后再聊聊现在开发过程中每天都会用到的 AI 编程工具。到了 AI 时代程序员手里多少都应该有一款自己顺手的Vibe Coding工具。如果现在还完全依赖传统的“古法编程”其实可以尝试把 AI 编程工具真正融入日常开发流程体验一下开发效率上的变化。我目前主要使用Copilot CLI GitHub Copilot其中平时开发使用最多的是Copilot CLI。它可以选择不同的模型包括GPT 系列、Claude 系列和 Kimi 系列。现在从项目理解、代码生成、代码修改、问题排查到重构很多日常编码工作都会直接通过 Copilot CLI 来完成。除此之外还会搭配ChatGPTClaude作为日常开发、技术分析和方案讨论的辅助工具。AI 编程工具现在对我来说已经不再是一个单独的工具而是逐渐融入了整个开发流程。引入地址
返回列表