# 准备大模型实例
123456789101112131415161718import osos.environ["OPENAI_API_KEY"] = 'moonshot api key'os.environ["OPENAI_API_BASE"] = 'https://api.moonshot.cn/v1/'from langchain_openai import ChatOpenAIapi_key = os.getenv("OPENAI_API_KEY")base_url = os.getenv("OPENAI_API_BASE")print(api_key, base_url)model = ChatOpenAI( openai_api_base=base_url, openai_api_key=api_key, model_name="moonshot-v1-8k", temperature=1,)
# 案例 1
1 ...
# 如何将多个提示组合在一起。
当您想要重用部分提示时,这可能很有用。这可以通过 PipelinePrompt 完成。PipelinePrompt 由两个主要部分组成:
最终提示:返回的最后一个提示
管道提示:元组列表,由字符串名称和提示模板组成。每个提示模板都将被格式化,然后作为同名变量传递给将来的提示模板。
12345678910111213141516171819202122232425262728293031323334353637# Pipelinefrom langchain.prompts.pipeline import PipelinePromptTemplatefrom langchain.prompts.prompt import PromptTemplatefull_template = """{introduction}{example}{start}"""full_prompt = PromptTemplate.from_template ...
# 必知概念
官方概念:(地址:https://python.langchain.com)
LangChain 是一个开发由语言模型驱动的应用程序的框架。它使应用程序能够:
上下文感知:将语言模型连接到上下文源(提示指令、少量示例、响应内容等)
依靠语言模型进行推理(关于如何根据提供的上下文回答,采取什么行动等)
说人话 : 类似于 Java 的 SpringBoot 框架,而 LangChain 就是 AI 界的 “SpringBoot” 框架
# 必要条件
创建 月之暗面 的 api 账号, 月之暗面 == MoonshotAI
官网地址:https://platform.moonshot.cn
现在注册新用户还会 赠送15元钱
模型
计费单位
价格
moonshot-v1-8k
1M tokens
¥12.00
moonshot-v1-32k
1M tokens
¥24.00
moonshot-v1-128k
1M tokens
¥60.00
此处 1M = 1,000,000
价格比 OpenAI 的相当的实惠了,不过免费的 15 块已经 ...
# 前置条件
安装相关软件
docker 下载安装,地址: https://www.docker.com/get-started/
1Docker 是一种开源平台,用于开发、交付和运行应用程序。它利用容器化技术,可以将应用程序及其所有依赖项打包到一个独立的、标准化的单元中,称为容器。
ollama 下载安装,地址: https://ollama.com/download
1ollama 简单理解就是 安装、管理、连接 大模型的门户工具
# 如何运行
选择性操作
终端执行命令
启动 ollama: ollama serve (默认情况下下载好就是启动状态的)
安装大模型:gemma:2b 版: ollama run gemma:2b
(安装过程有点慢,耐心等待。当然也可以安装其他的大模型,地址:https://ollama.com/library)
安装完成其实就可以开始对话了。不过是在命令终端里,界面着实让人着急。
但是 可以安装可视化管理界面。
建议性实践
终端命令行执行
拉取 docker 镜像:
1docker run -d -p 3000:8 ...
Spring
未读# AOP 概念
AOP 又名 Aspect Oriented Programming 意为 ‘面向切面编程’通过预编译和运行期间动态代理来实现程序功能的统一维护的一种技术。
# 什么是 AOP
# AOP 的优势和应用场景
# Spring AOP 原理
# 代理模式和动态代理
SpringBoot
未读# 背景
Spring 的核心理念蕴含着容器的奥妙。在容器焕然一新的瞬间,外部世界看似平静,却不知内部却是波涛汹涌,掀起惊涛骇浪,浩浩荡荡。Spring
Boot 更进一步地封装了 Spring 框架,秉承着约定优于配置的原则,借助自动装配的机制。有时候,只需引入一个依赖,便能轻松实现功能的装配,几乎无需额外的配置。
# 调用顺序图
来自大佬的图
# 扩展类
# ApplicationContextInitializer
org.springframework.context.ApplicationContextInitializer
实现 ApplicationContextInitializer 接口的类,可以在 Spring 容器初始化的早期阶段介入,并在容器刷新之前对应用程序上下文进行必要的定制。
比如设置 环境属性 、 激活配置文件 、 注册监听器 等操作,以便在容器刷新后应用这些配置。
这为开发人员提供了更大的灵活性和控制力,使他们能够更好地适应应用程序的特定需求。
123456public class TestApplicationContextInitiali ...
# elasticsearch 的核心概念
Near Realtime(NRT)近实时
两个意思:
从写入数据到数据可以被搜索到有一个小延迟(大概 1 秒);
基于 es 执行搜索和分析可以达到秒级;
Cluster 集群
包含多个节点,每个节点属于哪个集群是通过一个配置(集群名称,默认是 elasticsearch )来决定的,对于中小型应用来说,刚开始一个集群就一个节点很正常
Node 节点
集群中的一个节点,节点也有一个名称(默认是随机分配的),节点名称很重要(在执行运维管理操作的时候),默认节点会去加入一个名称为 “elasticsearch” 的集群,如果直接启动一堆节点,那么它们会自动组成一个 elasticsearch 集群,当然一个节点也可以组成一个 elasticsearch 集群
Document&field 文档
es 中的最小数据单元,一个 document 可以是一条客户数据,一条商品分类数据,一条订单数据,通常用 JSON 数据结构表示
一个 index 下的 type 中,都可以去存储多个 document。
一个 docume ...
# 8 个能使用 GPT-4 的网站,带你领略人工智能的强大!
GPT-4,由 OpenAI 开发的大型语言模型,拥有强大的文本生成、翻译、问答等能力,是人工智能领域的最新突破。
想要体验 GPT-4 的魅力,但苦于没有开发环境?别担心!这里为你推荐 8 个能使用 GPT-4 的网站,让你轻松感受人工智能的强大。
# merlin
链接地址:https://www.getmerlin.in/fr
Merlin AI 的主要功能包括:
文本生成:可以生成各种文本格式,例如诗歌、代码、剧本、音乐作品、电子邮件、信件等。
翻译:可以翻译多种语言,并且支持多种语言之间的互译。
问答:可以回答您的问题,即使是开放式、具有挑战性或奇怪的问题。
Merlin AI 的优势包括:
强大:拥有强大的语言理解和处理能力,可以完成各种复杂的任务。
灵活:可以根据您的需求进行调整,以满足您的特定需求。
易用:提供便捷的操作界面,即使没有编程经验,也能轻松使用。
Merlin AI 的应用场景包括:
写作:可以帮助您完成写作任务,例如写文章、写代码、写剧本等。
翻译:可以帮助您克服语言障碍,与来自 ...
Java核心
未读# 理论
Java 序列化是 JDK 1.1 时引入的一组开创性的特性,用于将 Java 对象转换为字节数组,便于存储或传输。此后,仍然可以将字节数组转换回
Java 对象原有的状态。
序列化的思想是 “冻结” 对象状态,然后写到磁盘或者在网络中传输;
序列化有一条规则,就是要序列化的对象必须实现 Serializbale 接口,否则就会报 NotSerializableException 异常。
好,来看看 Serializbale 接口的定义吧:
12public interface Serializable {}
就一个空的接口嘛,竟然能够保证实现了它的 “类对象” 被序列化和反序列化?
# 实战
在回答上述问题之前,我们先来创建一个类(只有两个字段,和对应的 getter/setter ),用于序列化和反序列化。
1234567891011121314151617181920class Obj { private String name; private int age; public String getName() ...
234db99cd52a97edc76dee15a0b78a9cfbb2fe72764757b7bf506403d2181f91e83e4da17640f2ceae9783073b7bc0b1480ceca81a273ff6de5ed27e9674bed61fffe2ef814a8e86f3506dfbbc7fd99d0747c301a361aee365ef0b1e4ec33152fd0ab25f50acb1f8edf048010cf3c3a8ca402985e2aafef3d8fea0daf18fcf2e1dc14fa063adc4380646a5615dd4439917b3a4f772cbf553cd225cff9c9835a3366d738519daba3037503865045be762156bc203af56dd56e2dc3e62a914b4eccdd50132880d16d26f0584fcd3ad24f8019e428d15ac1515ed3d74321cca0fb555e2e7d37565cf5f19ed9b50c5fbef6b0b1b1d5f84565c748 ...