学会表达
1 说的多不等于好事
什么是擅于表达的人
是那些舌灿莲花,一张嘴就能滔滔不绝的人吗?不是的真正擅于表达的人,你不觉得他很会说话,可是你和他沟通时,觉得没有负担,简单轻松,而且效率很高,总能准确的完成信息对接。你爱和他说话
思维方式一
聆听是合理表达的关键,不要只想着把自己的话说完,要聆听别人,给别人合理的反馈
聆听的过程是了解你的表达对象的过程只有听的准确清楚才能表达的清晰精准
为了让别人更容易接受你的观点,你需要先合理化他的观点
用“否定词”并始一段对话会让表达的效率变差×不X不是X不对X你这个不是重点
而应该用 “你的意思是不是……”开始表达,没有人喜欢被反驳,先给予对方肯定他才愿意听你说话
思维方式二
站在对方的角度说自己想说的话
在表达时要站在聆听者的角度按照ta的需要给自己的表达内容分出轻重缓急 => 说重点 (思考别人需要的是什么,讲重点)
思维方式三
时间、地点、人物、事件不同表达的逻辑和重点也不同
在职场中“事”在人前面,因为需要准确传递信息,效率优先 ...
如何在服务器上部署hexo
概念步骤1.准备Linux服务器 这里以Ucloud为例,其他云服务商都是一样的
我们需要登录到主机的终端
2.安装 docker 与 docker-compose
centos
如果您想在 CentOS 系统上使用 Docker Compose,可以按照以下步骤操作:
安装 Docker 和 Docker Compose:在 CentOS 上安装 Docker 和 Docker Compose 非常简单。您可以通过运行以下命令来安装它们:
sudo yum install docker docker-compose
启动 Docker 服务:安装完成后,您需要启动 Docker 服务。您可以使用以下命令启动 Docker 服务:
sudo systemctl start docker
3.编写docker-compse文件一共有两个服务:
nginx提供反向代理的能力
hexo提供博客服务
下面的docker-file可以自己修改
hexo-docker-file
123456789FROM node:18.12.1LAB ...
java ServiceLoader SPI 机制
ServiceLoader 是 Java 提供的一种服务发现机制,用于实现服务提供者接口(SPI)的动态加载。它可以在运行时发现并加载实现了某个接口的服务提供者,实现解耦和动态扩展功能。
工作原理
接口定义:
你需要为某个功能定义一个接口(或抽象类),供其他模块实现。
服务提供者实现:
其他模块可以实现这个接口,提供不同的实现。
配置文件:
在实现模块的资源目录下创建文件:META-INF/services/<接口的全限定名>。
文件内容是实现类的全限定名,每行一个。
使用 ServiceLoader:
使用 ServiceLoader.load(Interface.class) 来加载接口的所有实现。
ServiceLoader 会在类路径中查找 META-INF/services 目录,读取配置文件,实例化实现类。
示例代码12345678910111213141516171819202122232425262728// 定义接口public interface MyService { void execute();} ...
AI Agent
概念 AI Agent是一种计算机程序,可以处理某种特定的任务,能够感知环境,自行决策并行动,改变环境,并自己通过学习改变性能。拥有记忆能力,可以通过思考,计划分解任务,并能反思表现。
AI代理(AI agent)是指使用 AI 技术设计和编程的一种计算机程序,其可以独立地进行某些任务并对环境做出反应。AI代理可以被视为一个智能体,它能够感知其环境,通过自己的决策和行动来改变环境,并通过学习和适应来提高其性能。这种智能体同时使用短期记忆(上下文学习)和长期记忆(从外部向量存储中检索信息),有能力通过逐步“思考”来计划、将目标分解为更小的任务 ,并反思自己的表现。AI代理通常包含多种技术,如机器学习、自然语言处理、计算机视觉、规划和推理等,这些技术使代理能够自主地处理信息并作出决策。
参考Agent 介绍
个人博客搭建
寻找灵感
通过图片寻找灵感
网站动画
https://www.awwwards.com/
framer motion
无代码工具
framer
HUGO
组件库
magicUI
Aceternity Ul
cult/ui
3D网站
Three.js
AI 工具
v0
React状态更新中的函数式更新
React 状态更新中的函数式更新在 React 中,状态管理是一个重要的主题。特别是在基于异步操作(如 API 请求)更新状态时,确保状态的一致性至关重要。本篇博客将讨论在更新状态时常见的问题,以及如何使用函数式更新来避免这些问题。
问题描述在进行异步操作后,我们可能会遇到更新状态时使用旧状态值的问题。例如,以下代码尝试在 API 请求完成后更新状态:
123456789101112131415161718- const searchTimelineTask = (fusionTagId) => {- let tagId : number = null- if () {- tagId = fusionTagId- }- axios.post('/checkit/api/tqs/query_timeline_task', {- fusionTagId: tagId,- pageNo: pagina ...
FreeMaker基础使用
FreeMarker 简介FreeMarker 是一个基于 Java 的模板引擎,主要用于生成文本输出(如 HTML、XML、JSON 等)。它通过将数据模型和模板分离,使得开发者能够轻松地将动态内容嵌入到静态文本中。FreeMarker 广泛用于 web 开发中,尤其是在 MVC(模型-视图-控制器)架构中。
为什么使用 FreeMarker?
分离关注点:将业务逻辑与表现层分离,简化了代码的维护和扩展。
灵活性:可以生成多种格式的输出,不仅限于 HTML。
易用性:提供了丰富的模板语法,方便开发者操作数据。
FreeMarker 的基本使用1. 环境准备首先,你需要在项目中引入 FreeMarker。可以通过 Maven 进行依赖管理:
12345<dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.31</version></depen ...
CDATA区块
概念CDATA(Character Data)区块用于在XML中包含不进行解析的文本内容。它的主要作用是允许在XML文档中嵌入字符数据而不被XML解析器当作标签处理。
关键点
语法:CDATA区块使用 <![CDATA[ ... ]]> 来包裹文本。
内容不解析:在CDATA区块内,所有内容都被视为纯文本,因此不需要对 <、>、& 等字符进行转义。
用途:适用于包含HTML代码、脚本代码或其他可能包含特殊符号的文本。
限制:不能在CDATA区块中直接包含 ]]> 序列,因为这会被视为CDATA区块的结束。
示例12345<example> <![CDATA[ <div>Some HTML content</div> ]]></example>
在这个例子中,<div>Some HTML content</div> 会被视为普通文本而不是XML标签。
Prompt engineering
书写提示词的原则1. 书写清晰明确的指令 (Write clear and specific instructions)书写策略:1. 使用分隔符
三引号:”””
反引号:```
破折号:—-
尖括号:<>
xml 标签: <tag></tag>
优点:可以避免提示词冲突,如下图所示,可以让模型知道```中的提示词是要概况的部分
2. 要求结构化输出(HTML、JSON)
3. 要求模型检查是否满足条件
4. 提供执行结果的示例
2. 给予模型足够的思考时间在短时间内处理完成,比如数学问题,模型可能跟我们人类一样只是看一眼,这样有可能给出错误的答案,
书写策略1. 指定完成任务所需要的步骤1234Step1:Step2:...StepN:
2. 在下结论前比如回答是否正确,让模型先给出自己推理的结论,再进行比较
模型的限制模型在训练时并没有完全记住它所看到的信息,所以它不了解知识的边界,如果问题超过模型的知识边界,就会编造听起来合理,但是实际上不正确的内容。
可以让模型先找到相关信息再回答问题,这样可以减少”幻觉”
yarn安装包网络超时
需要设置一下代理
12yarn set config http xxxx:xxxxxyarn set config https_proxy xxxxx:xxxx
注意这里一定要使用http协议