震惊!用ChatGPT+LangChain三步搞定SQL查询,再也不用背语法了!

Early Stopping实战指南:从验证集构建到多指标早停的生产级落地 Early Stopping(早停)是深度学习模型训练中的关键正则化技术,其本质并非简单防止过拟合,而是对验证集代表性的工程信任决策。理解其原理需穿透‘loss下降即收敛’的认知误区,关注验证集与线上分布的一致性、时间序列的漂移敏感性及多目标评估的业务对齐性。该技术的核心价值在于提升模型上线稳定性、缩短迭代周期并降低算力浪费,广泛应用于推荐系统、搜索排序、时序预测等生产场景。本文聚焦Early Stopping在真实AI工程中的落地难点——包括验证集时间泄露、单指标监控失真、梯度异常干扰及权重恢复失效等问题 阅读详情

数据对于现代商业决策是至关重要的。然而,许多职场的”牛马“大多都不熟悉 SQL,这就导致了“需求”和“解决方案”之间的脱钩了。Text-to-SQL 系统就可以解决了这个问题,它能将简单的自然语言问题转换成数据库查询。

接下来,我们将借鉴 Pinterest Text-to-SQL 工程团队的实现思路,来探讨如何构建一个自己的SQL生成器。

一、了解 Pinterest

Pinterest 希望公司内的每个人都能轻松的访问其内部的数据,并能够按需从海量的数据集中获取洞见,然而大多数人并非SQL方面的专家,因此,也就无法充分的数据的价值。这一问题间接的促成了 Pinterest Text-to-SQL 平台的诞生,他们的发展历程为我们构建类似工具提供了绝佳的蓝图。

第一版本

他们的第一个系统相当直观。用户提出一个问题,并手动列出他们认为相关的数据库表。然后,系统会生成一个 SQL 查询。

我们来看看它的架构:

  1. 用户提出分析性问题,并选择要使用的表。
  2. 系统从表元数据存储中检索相关表的 Schema(结构)。
  3. 将问题、选定的 SQL 方言和表 Schema 编译成一个 Text-to-SQL 提示词(Prompt)。
  4. 提示词被输入到 LLM(大型语言模型)中。
  5. 生成并向用户显示流式响应。

这种方法确实可行,但存在一个重大缺陷:用户往往不知道哪些表包含他们需要的答案。

第二版本

为了解决这个问题,他们的团队构建了一个更智能的系统,它采用了一种名为 检索增强生成(Retrieval-Augmented Generation, RAG) 的技术。系统不再要求用户提供表名,而是自动找到它们。它会搜索一个表格描述的集合,找出与用户问题最相关的描述。这种利用 RAG 进行表选择的方法,极大地提高了工具的用户友好性。

  1. 通过一个离线作业,生成一个包含表摘要和历史查询记录的向量索引。
  2. 如果用户未指定任何表,系统会将用户问题转换为 Embedding(嵌入向量),并对向量索引执行相似性搜索,以推断出最合适的 Top-N 个候选表。
  3. 将 Top-N 个表、表 Schema 和分析性问题编译成提示词,供 LLM 选择出最相关的 Top-K 个表。
  4. 将 Top-K 个表返回给用户进行验证或修改。
  5. 使用用户确认的表,继续标准的 Text-to-SQL 流程。

我们将复刻这个强大的两步方法。

二、我们的方案

我们将分两部分构建一个 SQL 生成器。首先,我们将创建核心引擎,负责将自然语言转换为 SQL。其次,我们将添加智能的表查找功能。

核心系统(Core System)

我们将构建一个基本链(chain),它接收一个问题和一张表名列表,并生成一个 SQL 查询。

  • 用户输入: 提供分析性问题、选定的表和 SQL 方言。
  • Schema 检索: 系统从元数据存储中获取相关的表 Schema。
  • 提示词组装: 将问题、Schema 和方言组合成一个提示词。
  • LLM 生成: 模型输出 SQL 查询。
  • 验证与执行: 检查查询的安全性,执行查询并返回结果。

RAG 增强系统(RAG-Enhanced System)

我们将添加一个检索器(Retriever)。该组件可以为任何问题自动推荐正确的表。

  • 离线索引: SQL 查询日志被 LLM 总结、嵌入,并与元数据一起存储在向量索引中。
  • 用户查询: 用户提供一个自然语言的分析性问题。
  • 检索: 问题被嵌入,与向量存储进行匹配,返回 Top-N 个候选表。
  • 表选择: LLM 对这些表进行排序和筛选,选出 Top-K 个最相关的表。
  • Schema 检索与提示词构建: 系统获取这些表的 Schema,并构建 Text-to-SQL 提示词。
  • SQL 生成: LLM 生成 SQL 查询。
  • 验证与执行: 检查、执行查询,并将结果和 SQL 返回给用户。

我们将使用 Python、LangChain 和 OpenAI 来搭建这个 Text-to-SQL 系统。一个内存中的 SQLite 数据库将作为我们的数据源。

构建自己的 SQL 生成器

我们开始构建系统。请按照以下步骤创建一个可工作的原型。

步骤 1: 设置您的环境

首先,我们安装必要的 Python 库。LangChain 帮助我们连接各个组件。Langchain-openai 提供与 LLM 的连接。FAISS 帮助我们创建检索器,而 Pandas 用于美观地显示数据。

!pip install -qU langchain langchain-openai faiss-cpu pandas langchain_community

接下来,您必须配置您的 OpenAI API 密钥。该密钥允许我们的应用程序使用 OpenAI 的模型。

import osfrom getpass import getpassOPENAI_API_KEY = getpass("Enter your OpenAI API key: ")os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY

步骤 2: 模拟数据库

Text-to-SQL 系统需要一个可供查询的数据库。在本演示中,我们创建一个简单的内存式 SQLite 数据库。它将包含三个表:users(用户)、pins(图钉)和 boards(画板)。这个设置模仿了 Pinterest 数据结构的一个基本版本。

import sqlite3import pandas as pd# 创建一个连接到内存式 SQLite 数据库conn = sqlite3.connect(':memory:')cursor = conn.cursor()# 创建表cursor.execute('''CREATE TABLE users (    user_id INTEGER PRIMARY KEY,    username TEXT NOT NULL,    join_date DATE NOT NULL,    country TEXT)''')cursor.execute('''CREATE TABLE pins (    pin_id INTEGER PRIMARY KEY,    user_id INTEGER,    board_id INTEGER,    image_url TEXT,    description TEXT,    created_at DATETIME,    FOREIGN KEY(user_id) REFERENCES users(user_id),    FOREIGN KEY(board_id) REFERENCES boards(board_id))''')cursor.execute('''CREATE TABLE boards (    board_id INTEGER PRIMARY KEY,    user_id INTEGER,    board_name TEXT NOT NULL,    category TEXT,    FOREIGN KEY(user_id) REFERENCES users(user_id))''')# 插入示例数据cursor.execute("INSERT INTO users (user_id, username, join_date, country) VALUES (1, 'alice', '2023-01-15', 'USA')")cursor.execute("INSERT INTO users (user_id, username, join_date, country) VALUES (2, 'bob', '2023-02-20', 'Canada')")cursor.execute("INSERT INTO boards (board_id, user_id, board_name, category) VALUES (101, 1, 'DIY Crafts', 'DIY')")cursor.execute("INSERT INTO boards (board_id, user_id, board_name, category) VALUES (102, 1, 'Travel Dreams', 'Travel')")cursor.execute("INSERT INTO pins (pin_id, user_id, board_id, description, created_at) VALUES (1001, 1, 101, 'Handmade birthday card', '2024-03-10 10:00:00')")cursor.execute("INSERT INTO pins (pin_id, user_id, board_id, description, created_at) VALUES (1002, 2, 102, 'Eiffel Tower at night', '2024-05-15 18:30:00')")cursor.execute("INSERT INTO pins (pin_id, user_id, board_id, description, created_at) VALUES (1003, 1, 101, 'Knitted scarf pattern', '2024-06-01 12:00:00')")conn.commit()print("Database created and populated successfully.")

输出:

步骤 3: 构建核心 Text-to-SQL 链

语言模型无法直接查看我们的数据库。它需要了解表的结构,即 Schema。我们创建一个函数来获取 CREATE TABLE 语句。这些信息将告知模型关于列、数据类型和键的信息。

def get_table_schemas(conn, table_names):    """Fetches the CREATE TABLE statement for a list of tables."""    schemas = []    cursor = conn.cursor() # Get cursor from the passed connection    for table_name in table_names:        query = f"SELECT sql FROM sqlite_master WHERE type='table' AND name='{table_name}';"        cursor.execute(query)        result = cursor.fetchone()        if result:            schemas.append(result[0])    return"\n\n".join(schemas)# 示例用法sample_schemas = get_table_schemas(conn, ['users', 'pins'])print(sample_schemas)

输出:

有了 Schema 函数,我们就可以构建我们的第一个链。一个提示词模板会指导模型完成任务。它将 Schema 和用户问题组合在一起。然后,我们将这个提示词连接到模型。

from langchain_core.prompts import ChatPromptTemplatefrom langchain_openai import ChatOpenAIfrom langchain_core.output_parsers import StrOutputParserfrom langchain_core.runnables import RunnablePassthrough, RunnableLambdaimport sqlite3 # Import sqlite3template = """You are a master SQL expert. Based on the provided table schema and a user's question, write a syntactically correct SQLite SQL query.Only return the SQL query and nothing else.Here is the database schema:{schema}Here is the user's question:{question}"""prompt = ChatPromptTemplate.from_template(template)llm = ChatOpenAI(model="gpt-4.1-mini", temperature=0)sql_chain = prompt | llm | StrOutputParser()# 让我们用一个明确提供表名的问题来测试我们的链。user_question = "How many pins has alice created?"table_names_provided = ["users", "pins"]# 在调用链之前,在主线程中检索 Schemaschema = get_table_schemas(conn, table_names_provided)# 将 Schema 直接传递给链generated_sql = sql_chain.invoke({"schema": schema, "table_names": table_names_provided, "question": user_question})print("User Question:", user_question)print("Generated SQL:", generated_sql)# 清理生成的 SQL,去除 markdown 代码块语法cleaned_sql = generated_sql.strip()if cleaned_sql.startswith("```sql"):    cleaned_sql = cleaned_sql[len("```sql"):].strip()if cleaned_sql.endswith("```"):    cleaned_sql = cleaned_sql[:-len("```")].strip()print("Cleaned SQL:", cleaned_sql)# 运行生成的 SQL 以验证其是否有效try:    result_df = pd.read_sql_query(cleaned_sql, conn)    # display(result_df)  # Assuming a notebook environment    print("\nQuery Result:")    print(result_df)except Exception as e:    print(f"Error executing SQL query: {e}")

输出示例:

步骤 4: 用 RAG 增强表选择功能

我们的核心系统运行良好,但它要求用户知道表名。这正是 Pinterest Text-to-SQL 团队解决的问题。现在,我们将实现 RAG 来进行表选择。我们首先为每个表编写简单、自然语言的摘要。这些摘要抓住了每个表内容的含义。

table_summaries = {    "users": "Contains information about individual users, including their username, join date, and country of origin.",    "pins": "Contains data about individual pins, linking to the user who created them and the board they belong to. Includes descriptions and creation timestamps.",    "boards": "Stores information about user-created boards, including the board's name, category, and the user who owns it."}

接下来,我们创建一个向量存储。这个工具将我们的摘要转换为数字表示(Embedding)。通过相似性搜索,它允许我们为用户的提问找到最相关的表摘要。

from langchain_openai import OpenAIEmbeddingsfrom langchain_community.vectorstores import FAISSfrom langchain.schema import Document# 为每个摘要创建 LangChain Document 对象summary_docs = [    Document(page_content=summary, metadata={"table_name": table_name})    for table_name, summary in table_summaries.items()]embeddings = OpenAIEmbeddings()vector_store = FAISS.from_documents(summary_docs, embeddings)retriever = vector_store.as_retriever()print("Vector store created successfully.")

步骤 5: 将所有组件组合成 RAG 驱动的链

现在,我们构建最终的智能链。这个链将整个过程自动化。它接收一个问题,使用检索器找到相关表,获取它们的 Schema,然后将所有内容传递给我们的 sql_chain。

def get_table_names_from_docs(docs):    """Extracts table names from the metadata of retrieved documents."""    return [doc.metadata['table_name'] for doc in docs]# 我们需要一种方法,在链中利用表名和连接来获取 Schema# 使用函数来获取 Schemadef get_schema_for_rag(x):    table_names = get_table_names_from_docs(x['table_docs'])    # 调用函数获取 Schema    schema = get_table_schemas(conn, table_names)    return {"question": x['question'], "table_names": table_names, "schema": schema}full_rag_chain = (    RunnablePassthrough.assign(        table_docs=lambda x: retriever.invoke(x['question'])    )    | RunnableLambda(get_schema_for_rag) # 使用 RunnableLambda 调用 Schema 获取函数    | sql_chain # 将包含 question, table_names, 和 schema 的字典传递给 sql_chain)# 让我们测试完整的系统。我们提出一个问题,但没有提到任何表。系统应该处理一切。user_question_no_tables = "Show me all the boards created by users from the USA."# 在字典中传递用户问题final_sql = full_rag_chain.invoke({"question": user_question_no_tables})print("User Question:", user_question_no_tables)print("Generated SQL:", final_sql)# 清理生成的 SQL,去除 markdown 代码块语法,使其更具鲁棒性cleaned_sql = final_sql.strip()if cleaned_sql.startswith("```sql"):    cleaned_sql = cleaned_sql[len("```sql"):].strip()if cleaned_sql.endswith("```"):    cleaned_sql = cleaned_sql[:-len("```")].strip()# 还要处理清理后可能存在的行首/行尾的换行符cleaned_sql = cleaned_sql.strip()print("Cleaned SQL:", cleaned_sql)# 验证生成的 SQLtry:    result_df = pd.read_sql_query(cleaned_sql, conn)    # display(result_df) # Assuming a notebook environment    print("\nQuery Result:")    print(result_df)except Exception as e:    print(f"Error executing SQL query: {e}")

输出示例:

成功了! 系统自动识别了 users 和 boards 表。然后,它生成了正确的查询来回答问题。这展示了使用 RAG 进行表选择的强大能力。

总结

我们成功构建了一个原型,展示了如何搭建一个 SQL 生成器。要将其投入生产环境,还需要更多步骤,例如您可以自动化表摘要过程,也可以在向量存储中包含历史查询以提高准确性。这遵循了 Pinterest Text-to-SQL 团队所走的道路。这个基础为创建强大的数据工具提供了清晰的路径。

常见问题

1. Text-to-SQL 系统的工作原理是什么?

它通过大型语言模型(LLM)将自然语言问题(如“谁是我的顶级客户?”)作为输入,结合数据库 Schema(结构信息),生成一个可执行的 SQL 查询。

2. RAG 在 Text-to-SQL 中有什么作用?

检索增强生成(RAG)用于智能地选择最相关的数据库表。它不再要求用户手动指定表名,而是根据用户问题,在表的描述或历史查询记录中进行相似性搜索,从而自动推断出需要查询的表,极大地提高了易用性。

3. LangChain 在这个系统中扮演什么角色?

LangChain 是一个用于开发由语言模型驱动的应用程序的框架。在本指南中,它用于连接不同的组件(如提示词模板、LLM、向量存储和检索器),并将它们组织成一个可执行的链(chain),从而实现整个 Text-to-SQL 流程。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
  • …

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
  • …

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
  • …

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案
  • …

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

Webhook 与外部集成:签名、超时、幂等性 本文详解ChatGPT App中Webhook的实战应用,强调其由外部服务主动发起、需快速响应并具备幂等性与安全校验。核心要点包括:使用HMAC签名验证请求真实性,避免依赖“秘密URL”;快速返回200并异步处理事件,防止超时重试引发重复操作;通过唯一事件ID和数据库事务实现幂等;结合Zod校验数据结构,脱敏日志以保护PII;区分测试/生产环境。最终构建稳健链路:支付完成 → Webhook触发 → 状态更新 → ChatGPT智能体实时反馈,确保系统在异步、不可靠网络下依然可靠。 阅读详情

相关推荐

MCP Gateway:为什么需要把它放在 ChatGPT 与你的服务之间

在ChatGPT应用扩展过程中,单一MCP服务器易演变为“上帝对象”,导致耦合严重、维护困难。引入MCPGateway作为统一入口,可实现请求路由、认证授权、日志监控、限流与本地化路由等跨服务能力,隐藏内部架构复杂性,保障单一接口对外。它不承担业务逻辑,而是专注网络层职责,支持金丝雀发布、多地域部署,提升系统可扩展性与可观测性。正确使用可避免“网关怪兽”陷阱,是生产级MCP架构的关键组件。

sinat_25548781的博客 162

AI内容流水线:从信号工程到工业级批量生产

在AI内容泛滥的今天,‘爆款’已不再是文本质量的产物,而是用户意图、平台分发与业务转化三重信号精准耦合的结果。真正的技术价值在于将内容生产重构为可测量、可校准、可迭代的信号工程系统——通过数据层沉淀原始行为、信号层建模可计算参数(如cognitive_load_score)、执行层调用专用AI模块,实现从需求输入到效果反馈的闭环。这种范式跳出了‘AI写作’误区,直击中小品牌、独立创作者与内容服务商的核心痛点:如何在预算有限、人力紧张的前提下,稳定批量交付高打开率、高转化率的内容。本文详解信号校验、人工干预锚

weixin_33708432的博客 413

系统稳健性:timeouts、circuit breakers、bulkheads,以及抵御 webhook 风暴

在ChatGPT App中,稳健性至关重要——用户仅见一个聊天界面,故障难以定位。为防止级联失效,需采用四大防护模式:超时(Timeouts) 避免无限等待,确保请求及时失败;熔断器(Circuit Breaker) 拒绝对已崩溃服务的无效调用;舱壁(Bulkheads) 隔离资源,防止局部过载拖垮全局;Webhook风暴防护 通过队列、幂等性和限流应对入站事件洪峰。结合合理超时设置、清晰错误反馈与关键路径优先保障,可显著提升系统韧性与用户体验。

sinat_25548781的博客 207

01 - 从0到1搞懂AI Agent!一文看懂智能体的前世今生与核心架构

最近半年,AI Agent(智能体)这个词火得一塌糊涂。打开技术社区,铺天盖地都是Agent相关的文章;打开招聘网站,Agent开发工程师的薪资水涨船高。但说实话,很多同学对Agent的理解还停留在“ChatGPT套壳”的层面。作为一个从传统开发转型AI的过来人,我深知这种迷茫——明明有编程基础,却不知道Agent到底是什么、能做什么、怎么学。这篇文章,就是写给这样的你。我会用最通俗的语言、最清晰的逻辑,带你从零开始搞懂AI Agent。框架学习曲线灵活性适合场景LangChain中等。

H.J.J的博客 1103

【网络】PFC背景和原理 、文档(DCB=PFC + ETS,DCBX=DCB扩展)

目录 零、背景 一、PFC 1.概述 2.报文格式 3.工作机制 二、ETS 产生原因 基本原理 优先级组的调度 优先级的调度 三、DCBX 产生原因 基本原理 DCBX TLV介绍 五、PFC 拥塞研究(文档收集) 六、DC-QCN算法 (网络工程师必会) 7.1 α更新 7.2 降速 7.3 提速 8.总结 ...

小鱼菜鸟的博客 2161

利用Python脚本在ADS2024 Update2中动态绘制与验证LPDDR5眼图模板

本文详细介绍了如何在ADS2024 Update2中,利用Python脚本动态绘制与验证LPDDR5眼图模板。通过调用DDS Python接口,工程师可在仿真后无需重新运行,即可灵活添加、修改矩形或六边形眼图模板,并实现批量自动化处理,从而极大提升高速信号(如LPDDR5)的调试与验证效率。

raspberrypi5的博客 595

ChatGPT标志着AI从‘操作说明书’到‘自然语言接口’的范式终结

大语言模型(LLM)正推动人机交互从结构化指令走向自然语言直译,其核心在于模型对用户意图的理解能力、上下文保持能力与响应一致性等工程指标突破。当端到端延迟低于2秒、多轮对话稳定维持12轮以上、响应逻辑自洽度超83%时,AI便不再需要用户学习‘怎么问’,而是直接响应‘想做什么’——这正是自然语言接口(NLI)取代传统NLU+规则引擎的关键拐点。该转变深刻影响智能客服、知识管理、Prompt工程与AI评测等典型应用场景,也倒逼工程师从模块开发转向意图流设计与认知对齐验证。

dichengyan0013的博客 478

告别黑窗口:XShell+X11转发图形化界面的5分钟保姆级教程(附Xming配置)

本文详细介绍了如何使用XShell和X11转发技术快速实现Linux图形化界面的远程访问。通过5分钟快速配置指南,包括服务端设置、客户端工具选择及XShell+Xming的完美配置,帮助用户高效运行GUI应用程序,提升远程工作效率。特别适合需要图形化操作的开发者和运维人员。

weixin_29223603的博客 320

元壤教育“AIGC大模型应用开发工程师”课纲,学习这套课程就够了

AIGC大模型时代是堪比移动互联网时代10倍体量的机会,所有企业都需要通过AIGC重塑一遍,对于IT人士来说,AIGC大模型应用开发更是大机会,大转折,开始拥抱AIGC吧

孔壹学院 1997

新手3dslicer手动肝脏切割及体积测量(详细图文)

刚接手软件的时候,我一直想用自动分割工具,试验了Med sam,依赖安装不了;试验了英伟达的AI,NvidiaAIAssis,传服务器根本没反应,所有只有用了手动切割。不要求所有层面勾画,但是最好是典型层面都勾画一下,特别是有毗邻脏器密度相近的层面。点击3D后可能三维窗口未显示,可以调整一下窗口大小,有可能显示在我们看见的范围之外。早就准备更新这篇了,由于懒癌发作,一直早葛优躺,今天刚好有点时间,就简单写下来。

linjianping513的博客 5903

3D 结构光相机工作原理全解 | 从编码投射到三维重建,原理 + 代码 + 工业实战一站式掌握

本文从3D结构光相机的整体架构出发,层层拆解了编码投射、相位计算、相位解包裹、三维重建的核心原理,补充了工业实战所需的公式推导、代码实现、参数调优、设备选型和案例落地,核心总结如下:相位是3D结构光成像的“灵魂”,其精度、稳定性直接决定3D重建的效果,包裹相位与绝对相位的区分的是工业实战的基础;编码投射的核心是“正弦条纹+格雷码条纹”组合,正弦条纹负责高精度相位提取,格雷码条纹辅助解包裹,适配工业场景的精度与稳定性需求;

getusushu的博客 400

职场AI应用师:从工具使用者到价值创造者的核心能力与实战场景

在数字化转型浪潮中,自然语言处理和机器学习等人工智能技术正从实验室走向广泛的业务场景。其核心原理在于通过算法模型处理和分析海量数据,识别模式并做出预测或决策。这一技术价值在于将非结构化信息转化为可操作的洞察,从而突破传统业务流程的效率瓶颈和质量天花板。在工程实践中,这些技术被应用于数据分析与商业智能增强、流程自动化等具体场景,通过构建智能化的数据流水线和自动化工作流,解决数据清洗耗时、复杂分析门槛高以及非结构化文档处理等实际业务痛点。职场AI应用师正是这一趋势下的关键角色,他们作为业务与技术的翻译官,致力于

weixin_30703911的博客 407

编写python脚本调用ordinals以及BRC20的接口

1、钱包地址生成walletreceive,对应ord命令:ord wallet receive。6、测试手动出块generate,这个只在regtest链节点用得上。所有接口都是post请求,采用postman进行测试。4、测试bitcoin转币sendtoaddress。7、测试其他的wallet方法wallet。2、钱包币种铭刻inscription,对应bitcoin-cli命令。对应bitcoin-cli命令。对应bitcoin-cli命令。fee.json文本模板。还可以加很多根据需要加减。

云深海阔专栏 1038

AI编程革命:从传统开发到对话式编程的转型

随着AI技术的快速发展,编程范式正在经历一场深刻的变革。传统的手写代码模式逐渐被AI辅助编程所取代,GitHub Copilot等工具的出现标志着对话式编程(Conversation-Driven Development)的兴起。这种新模式通过自然语言交互生成代码,大幅提升了开发效率。AI编程的核心在于精准的提示词设计和代码验证,开发者需要掌握结构化提示、边界测试等技能。在实际应用中,AI编程特别适合快速原型开发、代码重构和复杂逻辑实现,但也需警惕代码幻觉和安全风险。对于传统程序员而言,转型为AI解决方案设

weixin_30420305的博客 419

不使用工具箱,通过MATLAB纯编程实现lstm网络的训练过程

长短期记忆网络(LSTM,Long Short-Term Memory)是一种时间循环神经网络,是为了解决一般的RNN(循环神经网络)存在的长期依赖问题而专门设计出来的,所有的RNN都具有一种重复神经网络模块的链式形式。在标准RNN中,这个重复的结构模块只有一个非常简单的结构,例如一个tanh层。

平时工作较为繁忙,私信消息一般晚上回复,谢谢大家~~ 1007

ZYNQ PL通过EMIO ETHE1外接PHY由GMII转RGMII

1,设置EMIO方式引出ETHE1 2,从GMII过度到RGMII GMII: 发送 gmii_tx_clk gmii_tx_d[7:0] gmii_tx_en gmii_tx_er 接收 gmii_rx_clk gmii_rx_d[7:0] gmii_rx_dv gmii_rx_er RGMII: 发送 tx_clk tx_d[3:0] tx_ctrl 接收 rx_clk rx_d[3:0] rx_ctrl 首先数据总线从时钟单边沿采样8bit转变为了双边沿采样4bit,从88E1

wangjie36的博客 1万+

AI Agent企业级落地实战:从全员推广到价值闭环的避坑指南

AI Agent作为智能体技术,其核心原理是通过大语言模型理解用户意图,并结合知识库与工具调用,完成特定任务。这项技术的价值在于将通用AI能力转化为解决具体业务问题的生产力,尤其在提升企业运营效率、降低重复劳动成本方面潜力巨大。其典型应用场景包括智能客服、自动化办公、数据查询分析与代码辅助生成等。本文以美团CatPaw平台覆盖9万员工的实战为例,深入剖析了企业推动AI Agent大规模落地时,在可用性、易用性、有用性及可持续性四个维度的关键挑战与解决方案,为技术管理者提供了从场景选择、MVP构建到规模化推广

weixin_34049948的博客 337

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

GPT-4.1不存在?工程师如何构建真实大模型评估体系

大语言模型(LLM)评估是AI工程落地的核心环节,其本质并非比拼版本号,而是围绕响应稳定性、长程推理一致性与指令遵循鲁棒性三大硬指标展开的系统性验证。在GPT-4 Turbo持续迭代但官方从未发布‘GPT-4.1’的现实下,行业普遍存在命名幻觉、营销包装与API贴牌等误导现象,导致技术决策偏离真实能力边界。有效的评估必须扎根业务黄金标准——如金融合规中的法条引用准确率、医疗诊断中的多维度完全匹配、工业故障中的语义衰减抗性——并融合压力测试矩阵、三层归因分析与动态基线看板,实现从‘感觉变慢’到‘定位p95延迟

weixin_30457465的博客 410

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

从“你问它答”到“它主动推”:ChatGPT Pulse 把记忆、反馈和日历变成一条信息策划流水线

Pulse 的真正意义,未必在于“AI 更聪明了”,而在于交互模型的变化:ChatGPT 从“你问它答”的被动应答器,变成了一个会主动做错时研究的信息策划者。而 OpenAI 在产品设计上反复强调的,是让用户掌握决策权——反馈划定范围、保存决定留存、整合默认关闭、随时可以关掉。如果你习惯每天用 AI 规划日程、推进长期目标,这类“晨间更新”模式值得尝试;如果你更在意对话历史的干净和隐私的最小暴露,那就只开记忆和反馈通道,把日历邮件整合留在关闭状态。

2603_96980045的博客 220

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

ChatGPT 应用与插件入门:连接 Google Drive 并在对话中调用

ChatGPT 可以通过应用连接 Google Drive 等常用服务,在对话里直接查找和总结文件。本文介绍应用与插件的区别、从设置中连接第一个应用、用 @ 或加号在对话中调用、四档权限的含义,以及断开连接和隐私设置要点。

死磕音视频 195

【大模型应用开发:基于GPT-4和ChatGPT】(使用GPT-4和ChatGPT构建应用程序)

本文围绕GPT-4和ChatGPT的应用开发,介绍大模型的基本概念、核心能力与使用边界,讲解提示词设计、多轮对话管理、接口调用、知识库接入及工具集成等关键方法。结合智能客服、内容创作、企业知识库、代码辅助与办公自动化等典型场景,梳理从需求分析、方案设计到功能实现、测试优化和部署上线的开发流程。同时,讨论模型幻觉、数据隐私、响应速度与调用成本等实际问题,说明如何通过上下文管理、效果评估和安全措施提升应用的可靠性与可用性,帮助初学者建立系统认知,为开发者将大模型能力融入业务、构建实用的智能应用提供参考。

承于所学,探技术之渊;以代码求政,寻成长之道。 1万+

ChatGPT、Codex性能实战:Java把for循环改成parallelStream,为什么CPU更高、接口反而更慢?

本文围绕ChatGPT、Codex把Java for循环改为parallelStream后CPU升高、P99恶化的问题,分析任务粒度、ForkJoinPool争用、阻塞IO、事务与ThreadLocal、GC开销等机制,并给出JFR、JMH、并发压测和安全改造的完整验证流程。

2601_96380027的博客 427

【大模型应用开发:基于GPT-4和ChatGPT】(GPT-4和ChatGPT的高级技巧)

本文聚焦GPT-4和ChatGPT的高级应用技巧,从提示词优化、角色设定、示例引导与任务拆解入手,讲解如何通过多轮对话和上下文管理提升交互效果。结合知识库问答、内容创作、代码辅助与业务自动化等场景,介绍知识检索、工具调用、结构化输出及应用集成方法,并探讨模型幻觉、结果一致性、数据隐私与调用成本等常见问题。通过效果评估、输出校验和迭代优化,帮助开发者在理解模型能力边界的基础上,提高回答质量与开发效率,将大模型能力转化为可靠、可维护的智能应用。

承于所学,探技术之渊;以代码求政,寻成长之道。 1万+

2026年国内如何开通ChatGPT Plus和Pro?订阅方式、Codex额度及常见问题整理

ChatGPT Plus 和 Pro 的选择,主要取决于日常使用强度,不是价格越高就一定越合适。普通办公、学习以及轻中度编程可以先评估 Plus;如果已经长期使用 Codex,且当前额度经常影响正常开发,再考虑 Pro。订阅过程中,需要注意付款渠道、账号归属及原有续费状态。完成购买后,应该回到同一个 ChatGPT 账号核验套餐,而不是只根据付款记录判断是否生效。另外,Codex 的 ChatGPT 登录额度和 API Key 计费必须分开理解,这也是不少开发者遇到问题时容易忽略的地方。

shennv888的博客 248

国内一键下载配置 Claude Code、ChatGPT、Codex 使用第三方API,详细图文教程

本文介绍一种在国内使用 Claude Code、Codex、Hermes 等 AI 工具的新方式——全网最简单的方式:只用点点鼠标,无需繁琐配置,无需国外支付,无需特殊网络。所有问题,用AI 灵动软件彻底全部解决,一键点击,Claude Code、Codex 、ChatGPT 自动安装配置 ,打开直接用。相信你也看了不少文章,犹豫到底选哪家更好更靠谱,性价比高,还要稳定快速。免费的肯定没好货,因为都是有成本。充值了,又怕被坑。这家充值后,若不满意,直接自助无理由退款。

薛瑄的博客 147

字节把剪映国际版嵌入ChatGPT

强强合作的剪辑AI化。

2601_95066946的博客 339
上一篇: 90% 的人都搞混的 RAG 与 CAG,一篇讲透怎么选!
下一篇: 破防了!传统RAG开发太痛苦?这个工具让部署时间从数周缩至几分钟!
Python_金钱豹
博客等级 码龄5年 1万+粉丝 2812原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值