上一页 1 2 3 4 5 6 7 ··· 18 下一页

golang errgroup 的超时检测

摘要: > golang errgroup 的作用. errgroup 的超时检测通常是一种事后得到结果的方式。 errgroup本身并不直接支持超时控制,而是依赖于与之关联的context.Context来实现超时和取消功能。 当context超时时,它会关闭Done通道,这将通知errgroup中的协程 阅读全文
posted @ 2024-05-29 21:02 ercom 阅读(76) 评论(0) 推荐(0)

golang errgroup 的作用

摘要: errgroup 是 Go 中用于并发控制和错误处理的一个工具,提供了一种方便的方式来协调多个goroutine。 它允许你在一个组中运行多个goroutine,并等待它们全部完成,同时收集和返回第一个发生的错误。 它的主要作用包括: 同步: errgroup.Group 提供了一个 Wait 方法 阅读全文
posted @ 2024-05-29 20:59 ercom 阅读(146) 评论(0) 推荐(0)

golang的 CGO 是什么

摘要: CGO是Go(Golang)语言中的一个工具,全称为 "C-Go" 或者 "C for Go"。 它是Go标准库的一部分,允许Go代码与C语言代码进行交互。 CGO提供了在Go程序中使用C语言库的能力,同时也允许C代码调用Go的函数。 通过CGO,开发者可以利用Go语言的强类型和垃圾回收等特性,同时 阅读全文
posted @ 2024-05-27 23:03 ercom 阅读(983) 评论(0) 推荐(0)

golang的交叉编译是什么

摘要: Go(Golang)的交叉编译是指在一种硬件架构或操作系统环境下,使用Go编译器生成适用于另一种架构或操作系统的可执行程序。 Go语言的设计使得交叉编译变得非常简单和高效,它允许开发者在开发环境中构建目标平台上的代码,而无需在目标平台上实际运行编译过程。 在Go中,交叉编译主要涉及到设置两个环境变量 阅读全文
posted @ 2024-05-27 23:00 ercom 阅读(240) 评论(0) 推荐(0)

golang为什么chan大部分是发送结构体,而不是其它比如string

摘要: type token struct{} type Group struct { cancel func(error) wg sync.WaitGroup sem chan token errOnce sync.Once err error } func (g *Group) done() { if 阅读全文
posted @ 2024-05-27 22:56 ercom 阅读(68) 评论(0) 推荐(0)

golang 的学习曲线

摘要: Go(Golang)语言的设计目标之一就是让其学习曲线尽可能平缓,这意味着对于大多数开发者来说,学习Go语言比许多其他现代编程语言可能更快上手。以下是通常Golang学习曲线的一个概述: 1 入门阶段: 基本语法:Go语言的语法相对简单,与C/C++和Java有一定的相似性,所以对于有这些背景的开发 阅读全文
posted @ 2024-05-23 19:06 ercom 阅读(197) 评论(0) 推荐(0)

Gin 框架的执行流程

摘要: Gin框架是一个用Go语言编写的高性能Web框架,它基于httprouter实现,具有快速、简洁和高效的特性。 以下是Gin框架处理HTTP请求的大致执行流程: 1 初始化Gin引擎: 用户创建一个新的gin.Engine实例,这通常是应用程序的主路由器。 用户定义路由,这些路由是通过engine. 阅读全文
posted @ 2024-05-23 18:59 ercom 阅读(186) 评论(0) 推荐(0)

Gin context 功能分类(context.go)

摘要: CONTEXT CREATION FLOW CONTROL ERROR MANAGEMENT METADATA MANAGEMENT INPUT DATA RESPONSE RENDERING CONTENT NEGOTIATION GOLANG.ORG/X/NET/CONTEXT 在线 IPFS 阅读全文
posted @ 2024-05-23 18:54 ercom 阅读(19) 评论(0) 推荐(0)

开发浏览器extension和开发油猴脚本的区别,全方位对比

摘要: 开发浏览器Extension(扩展)和油猴脚本(通常指的是Tampermonkey这样的用户脚本管理器)虽然都可以增强浏览器功能,但它们在多个方面存在显著的差异。 以下是全方位的对比: 1 覆盖范围: 浏览器扩展:通常提供全局性的增强,影响整个浏览器或特定类型的网页,可以修改浏览器界面、提供新的功能 阅读全文
posted @ 2024-05-22 20:17 ercom 阅读(570) 评论(0) 推荐(0)

Gin 框架是怎么使用 net http 包的(gin.go)

摘要: Gin 框架是基于 Go 语言的标准库 net/http 构建的,它使用 net/http 提供的基础功能来构建自己的高性能 Web 应用框架。 具体来说,Gin 使用 net/http 的以下方面: 1,HandlerFunc: Gin 使用 net/http 的 HandlerFunc 类型,这 阅读全文
posted @ 2024-05-22 20:12 ercom 阅读(285) 评论(0) 推荐(0)

golang select 和外层的 for 搭配

摘要: select语句通常与for循环搭配使用,但并不是必须的。 在某些情况下,select可能会直接放在一个独立的goroutine中,没有外层的for循环。 这通常发生在你知道只会有一次或有限次操作的情况下。 例如,你可能有一个简单的goroutine,它等待一个特定的channel信号,然后执行一次 阅读全文
posted @ 2024-05-21 22:52 ercom 阅读(574) 评论(2) 推荐(1)

golang 类型断言和 var _ T = expression 写法

摘要: 类型断言(Type Assertion)在Go语言中用于检查一个接口值的具体类型,并从中获取该类型的值。 它允许你声明并访问接口变量内部存储的非接口类型的值。有两种主要的类型断言形式: value, ok := i.(T):这种形式会检查接口 i 是否持有类型 T 的值。如果成功,value 将是 阅读全文
posted @ 2024-05-21 22:45 ercom 阅读(66) 评论(0) 推荐(0)

数据库触发器、存储过程、视图、约束

摘要: 【触发器】 MySQL中的触发器(Trigger)是一种数据库对象,它允许在特定的数据库操作(如INSERT、UPDATE或DELETE)发生之前或之后,自动执行预定义的SQL语句或一系列操作。触发器主要用于增强数据库的逻辑控制,确保数据的完整性和一致性,以及执行一些附加的任务,如审计、日志记录或验 阅读全文
posted @ 2024-05-21 22:40 ercom 阅读(167) 评论(0) 推荐(0)

Ollama的常见问题解答(FAQ)

摘要: 1 如何更新Ollama? 在macOS和Windows上,Ollama会自动检查更新。只需点击任务栏或菜单栏图标,然后选择“重启以更新”来应用新版本。 在Linux上,需要重新运行安装脚本来升级。 2 如何查看日志? 查阅特定的故障排查文档来了解如何查看和使用日志。 3 我的GPU是否兼容Olla 阅读全文
posted @ 2024-05-16 22:43 ercom 阅读(7781) 评论(0) 推荐(1)

Ollama 源代码中值得阅读的部分

摘要: 阅读 Ollama 源代码以了解其内部工作机制、扩展功能或参与贡献。 以下是一些值得重点关注的部分: 1. 核心服务模块: 查找负责启动和管理模型服务的主程序或类,这通常是整个项目的核心逻辑所在。关注如何初始化模型环境、加载模型权重、配置服务器端口和通信协议等关键步骤。 2. 模型加载与推理逻辑: 阅读全文
posted @ 2024-05-16 22:37 ercom 阅读(1331) 评论(0) 推荐(1)

golang context 特点,和自己定义分类有什么区分

摘要: context 包的特点包括: 1 信号传递: 取消信号:context 提供了一个取消机制,允许一个父级 goroutine 在必要的时候通知其子级 goroutines 任务应该停止执行。 截止时间:可以设置一个截止时间,当超过这个时间时,上下文自动变为取消状态。 超时:类似截止时间,但通常基于 阅读全文
posted @ 2024-05-16 22:23 ercom 阅读(33) 评论(0) 推荐(0)

GGUF构建ollama模型, 模型怎么量化成GGUF格式

摘要: GGUF构建ollama模型https://zhuanlan.zhihu.com/p/689555159https://www.cnblogs.com/ghj1976/p/18063781/ollama-yun-xing-gguf-mo-xing 模型怎么量化成GGUF格式https://zhuan 阅读全文
posted @ 2024-05-16 22:20 ercom 阅读(195) 评论(0) 推荐(0)

Ollama开发指南

摘要: 前奏:Ollama是什么,为什么这么好用 安装必备工具 确保已安装以下软件的正确版本: CMake 3.24 或更高版本 Go 1.22 或更高版本 GCC 11.4.0 或更高版本 使用 Homebrew 安装这些工具(适用于macOS和Linux): brew install go cmake 阅读全文
posted @ 2024-04-28 23:41 ercom 阅读(903) 评论(0) 推荐(1)

go generate ./... 含义

摘要: go generate ./... 是一个Go语言中的命令,用于在编译前自动执行代码生成任务。 这个命令会遍历当前包及其子包中的所有源代码文件,查找所有包含特殊注释 //go:generate 的行。 这些注释后面跟着的是应该执行的命令,用于生成额外的源代码、元数据或其他编译时所需的文件。 执行 g 阅读全文
posted @ 2024-04-28 23:22 ercom 阅读(219) 评论(0) 推荐(0)

cmake 的 -S -B -D 分别是什么意思

摘要: 在 CMake 中,命令行参数 -S、-B 和 -D 分别代表以下含义: -S <path> 或 --source <path>: 指定项目的源代码目录。这个路径应该是包含 CMakeLists.txt 文件的目录。 -B <path> 或 --build <path>: 指定构建目录,也就是生成的 阅读全文
posted @ 2024-04-28 23:13 ercom 阅读(3311) 评论(0) 推荐(0)

git submodule 命令用法及含义

摘要: git submodule init 命令的作用是初始化Git仓库中的子模块。当一个Git仓库包含其他Git仓库作为子模块时,首次克隆这样的仓库并不会自动下载子模块的内容。执行 `git submodule init` 会进入子模块目录,读取 .gitmodules 配置文件,然后设置本地的远程仓库 阅读全文
posted @ 2024-04-28 23:05 ercom 阅读(514) 评论(0) 推荐(0)

rerank来提升RAG的准确度的策略

摘要: RAG(Retrieval-Augmented Generation)是一种结合检索和生成两种技术的模型,旨在通过检索大规模知识库来增强文本生成任务的准确性。 要通过reranking(重排序)来提升RAG的准确度,可以采取以下策略: 1. 使用更精细的评分函数 RAG通常会在检索阶段根据输入问题或 阅读全文
posted @ 2024-04-24 22:05 ercom 阅读(929) 评论(0) 推荐(0)

Ollama是什么,为什么这么好用

摘要: Ollama 是一个开源框架,专为在本地机器上便捷部署和运行大型语言模型(LLM)而设计。 以下是其主要特点和功能概述: 1. 简化部署:Ollama 目标在于简化在 Docker 容器中部署大型语言模型的过程,使得非专业用户也能方便地管理和运行这些复杂的模型。 2. 轻量级与可扩展:作为轻量级框架 阅读全文
posted @ 2024-04-24 22:00 ercom 阅读(15533) 评论(0) 推荐(1)

LlamaIndex 常见问题解答(FAQ)

摘要: 提示:如果您尚未完成,请安装 LlamaIndex 并完成起步教程。遇到不熟悉的术语时,请参考高层次概念部分。 在这个章节中,我们将从您为起步示例编写的代码开始,展示您可能希望针对不同应用场景对其进行的常见定制方法: python from llama_index.core import Vecto 阅读全文
posted @ 2024-04-14 23:04 ercom 阅读(657) 评论(0) 推荐(0)

LlamaIndex 探索视频系列

摘要: 如果您喜欢通过视频学习,现在正是查看我们的“探索 LlamaIndex”系列的好时机。否则,我们建议您继续阅读“理解 LlamaIndex”教程。 自下而上开发(Llama Docs Bot) 这是“探索 LlamaIndex”系列中的一个子系列,向您展示如何从零开始构建文档聊天机器人。 我们将以“ 阅读全文
posted @ 2024-04-14 23:03 ercom 阅读(114) 评论(0) 推荐(0)

LlamaIndex 起步教程(本地模型)

摘要: 提示:确保您已先按照自定义安装步骤操作。 这是一个著名的“五行代码”起步示例,使用本地 LLM(大语言模型)和嵌入模型。我们将使用 BAAI/bge-small-en-v1.5 作为嵌入模型,通过 Ollama 服务的 Mistral-7B 作为 LLM。 下载数据 本示例使用 Paul Graha 阅读全文
posted @ 2024-04-14 23:03 ercom 阅读(2612) 评论(0) 推荐(0)

LlamaIndex 安装与配置(不含OpenAI)

摘要: pip install llama-index 这是一个包含以下组件的启动包: llama-index-core llama-index-legacy (暂时包含) llama-index-llms-openai llama-index-embeddings-openai llama-index-p 阅读全文
posted @ 2024-04-14 23:02 ercom 阅读(1436) 评论(0) 推荐(0)

LlamaIndex 是什么

摘要: LlamaIndex 是一个基于 LLM(大语言模型)的应用程序数据框架,适用于受益于上下文增强的场景。 这类 LLM 系统被称为 RAG(检索增强生成)系统。 LlamaIndex 提供了必要的抽象层,以便更容易地摄取、结构化和访问私有或特定领域的数据,从而安全可靠地将这些数据注入 LLM 中,以 阅读全文
posted @ 2024-04-14 23:01 ercom 阅读(3627) 评论(0) 推荐(0)

LlamaIndex 高层次概念

摘要: 本篇内容为您快速介绍在构建基于大型语言模型(LLM)的应用程序时会频繁遇到的一些核心概念。 增强检索生成(RAG) LLM 是基于海量数据训练而成,但并未涵盖您的具体数据。增强检索生成(Retrieval-Augmented Generation, RAG)通过将您的数据添加至 LLM 已有的数据集 阅读全文
posted @ 2024-04-14 23:01 ercom 阅读(201) 评论(0) 推荐(0)

RAG 工具和框架介绍: Haystack、 LangChain 和 LlamaIndex

摘要: Haystack、 LangChain 和 LlamaIndex,以及这些工具是如何让我们轻松地构建 RAG 应用程序的? 我们将重点关注以下内容: Haystack LangChain LlamaIndex 增强LLM 那么,为什么会有这些工具存在呢?如你所知,ChatGPT和其他LLM是在某个时 阅读全文
posted @ 2024-04-14 22:53 ercom 阅读(873) 评论(0) 推荐(0)

Docker Desktop v20.10.8 和 WSL2 迁移镜像存储目录

摘要: 只迁移存储镜像和挂载文件目录:https://www.cnblogs.com/lemonK/p/17781775.html 同时迁移docker程序目录、更改镜像默认位置:https://www.cnblogs.com/kkbk/p/17702465.html Windows装Docker至D盘/其 阅读全文
posted @ 2024-04-11 12:31 ercom 阅读(49) 评论(0) 推荐(0)

embedding models 是什么

摘要: embedding models 是一类机器学习模型,它们的核心功能是将高维、离散的输入数据(如词汇、类别标签、节点或实体)映射到低维、连续的向量空间中。 这些向量(即 embeddings)通常具有丰富的语义信息,并能够捕捉原始数据之间的潜在关系和相似度。以下是对 embedding models 阅读全文
posted @ 2024-04-10 19:19 ercom 阅读(1191) 评论(0) 推荐(0)

大模型 RAG 是什么

摘要: 大模型 RAG(Retrieval-Augmented Generation)是一种结合了检索(Retrieval)与生成(Generation)能力的先进人工智能技术,主要用于增强大型语言模型(LLMs,Large Language Models)在特定任务中的表现,特别是那些需要访问外部知识库或 阅读全文
posted @ 2024-04-10 19:17 ercom 阅读(3532) 评论(0) 推荐(0)

通用的 AI prompt 实操技巧

摘要: 1. 提供清晰、具体的目标在 Prompt 中明确指出你希望 AI 辅助完成的具体任务,包括要实现的功能、遵循的标准、适用的技术栈等。 2. 提供足够的上下文提供与任务相关的背景信息、现有代码片段、接口文档、数据结构等,帮助 AI 更好地理解你的意图。 3. **使用结构化和层次化的提示**将复杂的 阅读全文
posted @ 2024-04-10 19:16 ercom 阅读(238) 评论(0) 推荐(0)

油猴脚本的用处

摘要: 油猴脚本(通常指使用用户脚本管理器如 Tampermonkey 运行的 JavaScript 脚本)具有多种用途,主要用于增强或定制网页浏览体验,实现自动化操作,以及解决特定网站的功能缺失或不便之处。 以下列举了一些油猴脚本的主要用处: 1.个性化网页布局与样式: 修改网页主题色、字体、间距等,实现 阅读全文
posted @ 2024-04-10 19:14 ercom 阅读(1054) 评论(0) 推荐(0)

golang代码组织的核心思想与最佳实践

摘要: 1/golang代码组织的核心思想 Go语言(Golang)在代码组织上的核心思想是模块化和封装,主要体现在以下几个方面: 1、包(Packages): Go语言通过包(Packages)来组织代码,每个包包含一组相关联的.go源文件。包提供了一种天然的代码边界,允许开发者将相关功能逻辑组合在一起, 阅读全文
posted @ 2024-03-29 18:32 ercom 阅读(81) 评论(0) 推荐(0)

swoole的协程和golang的协程有什么区别,哪个更好

摘要: Swoole 的协程和 Golang(Go 语言)的协程(Goroutine)在概念上都是为了实现轻量级的并发编程,但它们在具体实现、使用方式和性能特点上有所不同: 实现原理: Golang 协程(Goroutine):Go 语言从语言层面内置了对协程的支持。Goroutine 是由 Go 运行时系 阅读全文
posted @ 2024-03-21 20:33 ercom 阅读(223) 评论(0) 推荐(0)

nodejs 什么情况下可以使用 import 来引入 export 的模块

摘要: 在 Node.js 中,原生并不支持 ES6 的 import 语句来引入模块。 不过从 Node.js v12 开始,通过实验性功能(--experimental-modules)可以使用 .mjs 扩展名的文件来启用对 ES6 模块的支持,并使用 import 语句。 新版本 Nodejs 已移 阅读全文
posted @ 2024-03-13 22:24 ercom 阅读(638) 评论(0) 推荐(0)

export, export default, import, module.exports, require

摘要: ES6 规范:export 和 import 配对 import 的 {} 大括号里面指定要从其他模块导入的变量名, 如果 export 命令没有写 default,那么 import {} 大括号里面的变量名,必须与 export 导出的名称相同。 export default 为模块指定默认输出 阅读全文
posted @ 2024-03-13 22:22 ercom 阅读(30) 评论(0) 推荐(0)

export default {} 和 export {} 的区别

摘要: 在JavaScript ES6模块系统中,export default {} 和 export {} 有明显的区别: 1. export default {}: 这个语法用于导出一个默认的模块成员,它可以是一个对象、函数、类等。当导入时,可以使用任何名称来引用这个默认导出的成员,或者不指定名称直接导 阅读全文
posted @ 2024-03-13 22:21 ercom 阅读(638) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 ··· 18 下一页