首页
微语
统计
友链
留言
memos
圈子
图床
推荐
相册
网站监控
VPS监控
Search
1
实现typecho微信时光机功能的图文教程
48,577 阅读
2
为Typecho添加webp解析
43,698 阅读
3
Memos备忘录,记录瞬间想法
28,319 阅读
4
emlog数据成功迁移到typecho
28,005 阅读
5
Jasmine - 简约、美观的博客主题
26,827 阅读
手机达人
免费资源
电脑网络
娱乐休闲
网站建设
威言威语
Typecho
Emlog
WordPress
服务器
主题
插件
排行榜    
登录
/
注册
Search
标签搜索
wordpress
发布
插件
免费
教程
typecho
EMlog
PHP
代码
CSS
华为
图片
安装
代码修改
评论
手机
诺基亚
微信
文章
智能
Chen'mo
累计撰写
1,272
篇文章
累计收到
380
条评论
首页
栏目
手机达人
免费资源
电脑网络
娱乐休闲
网站建设
威言威语
Typecho
Emlog
WordPress
服务器
主题
插件
页面
微语
统计
友链
留言
memos
推荐
相册
网站监控
VPS监控
搜索到
1272
篇与
的结果
Debian离线部署docker教程
1、转至 https://download.docker.com/linux/debian/dists/2、在列表中选择您的 Debian 版本。cat /etc/os-release我的版本号是debian 113、转到pool/stable/并选择适用的架构(amd64、 armhf、arm64或s390x)https://download.docker.com/linux/debian/dists/bullseye/pool/stable/amd64/4、在deb网址下,下载Docker Engine、CLI、containerd 和 Docker Compose 软件包的以下文件。然后上传到服务器里。5.安装dpkg -i *.deb直接省事了。自动修复所有缺少或未配置的软件包apt-get install -f6.验证安装docker -vsystemctl start docker7.docker-compose的安装可参考:https://cmsblog.cn/1340.htmlwm_embed_post ids=13408.设置镜像加速地址nano /etc/docker/daemon.json{ "registry-mirrors": ["https://docker.1ms.run"] }
2024年12月30日
30 阅读
0 评论
0 点赞
2024-12-29
typecho引入最新memos动态
我的演示:https://cmsblog.cn/memos.html代码是GPT写的新建一个页面,插入以下代码。CSS需要根据自己的主题来调整。 <?php // 分页参数 // 分页参数 $items_per_page = 10; // 每页显示的动态数量 $page = isset($_GET['page']) ? (int)$_GET['page'] : 1; // 当前页码,默认为 1 // 获取 RSS 数据 $rss_url = 'https://memos.cmsblog.cn/u/157104945@qq.com/rss.xml'; // 替换为你的 Memos RSS 网址 $rss_content = file_get_contents($rss_url); if ($rss_content === FALSE) { echo '无法获取 Memos 数据'; } else { // 解析 RSS 数据 $xml = simplexml_load_string($rss_content); if ($xml === FALSE) { echo '解析 RSS 数据失败'; } else { // 获取动态条目总数 $total_items = count($xml->channel->item); // 计算总页数 $total_pages = ceil($total_items / $items_per_page); // 检查页码是否有效 if ($page < 1) $page = 1; if ($page > $total_pages) $page = $total_pages; // 计算当前页的起始索引和结束索引 $start_index = ($page - 1) * $items_per_page; $end_index = $start_index + $items_per_page; // 遍历 RSS feed,显示当前页的动态 $count = 0; foreach ($xml->channel->item as $item) { if ($count >= $start_index && $count < $end_index) { $title = (string)$item->title; $link = (string)$item->link; $description = (string)$item->description; $pubDate = (string)$item->pubDate; // 转换时间(假设 RSS feed 中的时间是服务器时间,或者根据需要调整时区) // 这里假设 RSS feed 中的时间已经是正确的时区时间,所以直接格式化输出 // 如果需要转换时区,请使用 DateTime 类或 strtotime + date 函数进行转换 $pubDateFormatted = date('Y-m-d H:i:s', strtotime($pubDate)); // 格式化时间字符串 // 截取描述内容并添加链接 $excerpt = mb_substr($description, 0, 300); if (mb_strlen($description) > 300) { $excerpt .= '... <a href="' . $link . '" target="_blank">阅读更多</a>'; } else { $excerpt .= ' <a href="' . $link . '" target="_blank">查看原文</a>'; } // 输出动态内容 echo '<div class="memo-item">'; echo '<h3><a href="' . $link . '" target="_blank">' . $title . '</a></h3>'; echo '<p>' . $excerpt . '</p>'; echo '<p>时间:' . $pubDateFormatted . '</p>'; // 使用格式化后的时间 echo '</div>'; } $count++; } // 输出分页导航 echo '<div class="pagination">'; if ($page > 1) { echo '<a href="?page=' . ($page - 1) . '">上一页</a> '; } for ($i = 1; $i <= $total_pages; $i++) { if ($i == $page) { echo '<span>' . $i . '</span> '; } else { echo '<a href="?page=' . $i . '">' . $i . '</a> '; } } if ($page < $total_pages) { echo '<a href="?page=' . ($page + 1) . '">下一页</a>'; } echo '</div>'; } } ?>
2024年12月29日
59 阅读
0 评论
0 点赞
2024-12-26
华为云学堂人工智能开发者认证训练营送500卷
活动链接:https://edu.huaweicloud.com/signup/886816346f6442c69234c053760e513a?medium=share_kfzlb&invitation=a2be848c0d894db1bc2d69aa212f4531 报名完成后,学习视频只要拉到最后面就可以很快完成。理论考试试题:https://blog.csdn.net/m0_64890295/article/details/144368615机考有3题,实验题里都有实操,先练习一遍应该能过。我抽中的1.参考这个实验题,很容易过https://lab.huaweicloud.com/testdetail_23322.这个实验题里有,但考试要自己写代码,我估计这题没得分。那个AK SK好像一直报错。我也没搞明白。3.实验题里有操作原型,稍微注意下就可以过。下载数据集,创建作业,最后obs桶策略要把权限改为公共读写
2024年12月26日
211 阅读
0 评论
0 点赞
2024-12-20
Typecho 主题模板:SimText 列表主题,真正的又快又简单
SimText 是一款非常简洁的文章列表主题,适合资讯列表类类目。这款主题对于 SEO 还是比较友好的,且结构简单,在默认主题的基础上创作的,视觉效果也比较 ok。作者是开放这款主题的版权的,但不提供下载。所以本着喜欢且开源的原则,我进行了二次创作。 Lighthouse 检测比较不错,手机端和电脑端都几乎是满分。主题首页请求只有 6 个,CSS 样式大约 14KB,还可以优化。自己配合做了动静分离后,首页加载大概只需要几毫秒。全主题除了使用代码高亮的 js 以外再无其它。主题预览地址:https://bosir.cn/simtextGitHub 下载地址:https://github.com/cnbosir/simtxt本站下载:[attach]1447[/attach]
2024年12月20日
472 阅读
0 评论
0 点赞
2024-12-12
搭建Artemis Server Monitor探针教程
项目地址Firelookout Server NG | HPFS server monitor built with URN.tshttps://github.com/kwaitsing/Artemis演示地址https://vps.cmsblog.cn面板端搭建以debian为例记录一下。下载脚本:curl -fsSL https://github.com/kwaitsing/Artemis/releases/download/pkg/install_server.sh >install_server.sh执行安装 bash install_server.sh 8080 EPdnpTjAr0EV5yuDXFf5这里的端口和passkey需要和客户端的对上systemctl daemon-reloadsystemctl restart ArtemiServer访问ip:8080应该是404 page not found就说明服务端运行成功了。搭建前端1.安装caddysudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list sudo apt update sudo apt install caddy2.下载前端源码至/artserver并解压 wget https://github.com/kwaitsing/Artemis/releases/download/DimLight%40build1.0.0/frontend.tar.gz3.设置caddy配置文件vi /etc/caddy/Caddyfile:80 { # Set this path to your site's directory. reverse_proxy /api* 127.0.0.1:8080 file_server { root /artserver } 4.启动caddysystemctl restart caddy前端就成功可以访问了。客户端搭建下载脚本curl -fsSL https://github.com/kwaitsing/Artemis/releases/download/pkg/install_client.sh >install_client.sh运行bash install_client.sh ws://example.com:8080 MyServer EPdnpTjAr0EV5yuDXFf5passkey要和之前设置的一样,MyServer可以随意,域名也可以直接用IPsystemctl daemon-reloadsystemctl restart ArtemisClient其它Alpine上也是可以部署服务端和客户端的,具体看https://github.com/kwaitsing/Artemis/blob/main/documents/enduser.md
2024年12月12日
869 阅读
0 评论
0 点赞
2024-12-01
哪吒v1 Docker CloudFlare Tunnel版
哪吒v1 Docker CloudFlare Tunnel版项目地址:https://github.com/yumusb/nezha-new.git无需公网IP,全程都在CF下,项目优势:不暴露公网ip 防止被攻击单栈转双栈 ipv4 ipv6 都能用 纯ipv6 也方便挂探针除境内网络外 走cf基本都优化开箱即用 迁移备份方便Dashboard安装安装好docker申请 CloudFlare Tunnel Tokenhttps://developers.cloudflare.com/cloudflare-one/connections/connect-networks/get-started/create-remote-tunnel/CloudFlare开启GRPC流量代理https://developers.cloudflare.com/network/grpc-connections/启动服务 git clone https://github.com/yumusb/nezha-new.git编辑 .env 文件中的 TUNNEL_TOKEN 为自己申请的docker compose up -d 或者docker-compose.ymlservices: dashboard: image: ghcr.io/nezhahq/nezha restart: always volumes: - ./data:/dashboard/data nginx: image: nginx:stable-alpine restart: always volumes: - ./conf.d:/etc/nginx/conf.d depends_on: - dashboard tunnel: image: cloudflare/cloudflared restart: always command: tunnel run --protocol http2 environment: - TUNNEL_TOKEN depends_on: - dashboard服务端映射到CFCloudFlare Tunnel管理页 https://one.dash.cloudflare.com/ 加1个Public hostname 指向 http://nginx:80Dashboard配置/dashboard/settings 里面设置一下仪表板服务器域名/IP(无 CDN)上面的 Public hostname真实IP请求头 可以写nz-realip或者CF-Connecting-IPAGENTdashboard右上角复制安装命令,注意手动修改参数中的8008端口为443,TLS改为True。DOCKER 安装 AGENT(可选)其他后台地址 /dashboard默认密码 admin/admin演示地址:https://nezha.204666.xyz/
2024年12月01日
1,382 阅读
0 评论
0 点赞
宝塔面板安装Infinite Servers探针面板
2024年11月10日
2,911 阅读
0 评论
0 点赞
2024-11-10
之前发现一个好看的探针面板没安装成功。最近在作者的帮助下安装成功了,特意将坑填一下。演示地址:https://host.cmsblog.cn项目地址:https://gitlab.com/hzxie/infinite-servers服务端安装1.宝塔面板创建网站,需要关闭防跨站攻击。修改nginx配置location / { proxy_http_version 1.1; proxy_buffering off; try_files $uri /index.php$is_args$args; } 2.下载文件解压后放在网站根目录https://gitlab.com/hzxie/infinite-servers/-/archive/master/infinite-servers-master.tar.gz3.php版本最好是php8以上,把禁用函数里的exec和shell_exec删除掉。否则获取不到部分数据。客户端安装只要节点有PHP环境就行,下载status.php文件。https://gitlab.com/hzxie/infinite-server/-/raw/master/api/status.php能访问到status.php?k=s显示出数据就行。服务端添加配置在configs/web-server.json里照下图添加即可。
rsync远程同步安装走过的坑
这几天在折腾同步的事,发现rsync蛮好用的。记(又)录(水)一下(篇):一、安装apt install rsync二、配置碰到最大的坑就是rsync --daemon后,rsync启动不了,发现没有873端口服务,结果是配置文件写错了。修改配置文件 vim /etc/rsyncd.conf[mm] path = /test/ ignore errors = yes read only = no write only = no hosts allow = 192.168.0.0/16 hosts deny = * list = false uid = root gid = root auth users = zzz secrets file = /etc/rsyncd.passwdecho "zzz:123456" >/etc/rsyncd.passwdchmod 600 /etc/rsyncd.passwd启动运行rsync --daemonss -luntp 或 netstat -luntp就能看到873端口服务启动成功了,如果没有,systemctl status rsyncd查看原因。使用客户端配置一下密码echo "111111" > /etc/rsyncd.passwdrsync -avz zzz@192.168.101.28::模块名 DEST --password-file=/etc/rsyncd.passwd计划任务使用宝塔的计划任务每天执行一次就行。参考文章https://juejin.cn/post/6888708683929223175https://www.cnblogs.com/wujuntian/p/16410235.html
2024年02月23日
16,545 阅读
1 评论
0 点赞
2024-02-22
alwaysdata提供100M的免费空间
lwaysdata提供100M的免费空间注册地址:https://www.alwaysdata.com/en/100 MB free web hosting with support for MySQL, PostgreSQL, CouchDB, MongoDB, PHP, Python, Ruby, Node.js, Elixir, Java, Deno, custom web servers, access via FTP, WebDAV and SSH; mailbox, mailing list and app installer included.之前不知道什么原因没有注册成功,今天注册好了所以发出来。演示地址:https://chenmo.alwaysdata.com/绑定的域名:https://as.513513.xyz
2024年02月22日
17,394 阅读
0 评论
1 点赞
2024-02-21
基于 render 免绑信用卡零成本搭建 memos
基于 render 免绑信用卡零成本搭建 memos下面是部署过程:一、创建 Web Service地址:https://dashboard.render.com/create?type=web使用 render 创建 Web Service,选择 Deploy an existing image from a registryImage URL:填写为 neosmemo/memos:stableName:自己随便填Region:地区选择 singapore,相比其他几个地区,从大陆访问选择新加坡速度是最快的For hobby projects:选择 Free $0/month 512 MB (RAM) 0.1 CPUEnvironment Variables:添加环境变量 Key:port,Value:5230以上填写完成后点击 Create Web Service部署完成二、添加网站监控由于免费版 render 程序在一定时间内没有访问程序会自动进入休眠状态,需要通过网站监控保障持续运行。示例https://yhzmemos.onrender.com/explorehttps://memos-altg.onrender.com
2024年02月21日
16,658 阅读
0 评论
0 点赞
nat小鸡上安装typecho博客并开启SSL隐藏掉端口号
2024年02月03日
16,138 阅读
0 评论
0 点赞
2024-02-03
最近又折腾上了nat小鸡,内存小、空间小,又没有80、443端口。奈何手痒,想尝试着手搓代码安装一个小博客。关键点就是把端口隐藏掉,利用cloudflare的Origin Rules功能来实现。怎么搭建博客,可以参考之前的文章。https://cmsblog.cn/1023.htmlwm_embed_post ids=1023本文以一个IPV4的debian11为例介绍,记录一下折腾过程。一、安装caddysudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curlcurl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpgcurl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.listsudo apt updatesudo apt install caddy.二、安装php-fpm,sqliteapt install -y php php-fpm php-curl php-gd php-mbstring php-common php-xml php-xmlrpc php-gd php-sqlite3 php-mbstring sqlite3此命令默认把apache2也安装上执行命令禁止apache2 开机启动systemctl stop apache2systemctl disable apache2debian11默认安装的应该是php7.4编辑vim /etc/php/7.4/fpm/pool.d/www.conf找到user = www-datagroup = www-data改成user = caddygroup = caddy启动或者重启caddy和php7.4-fpmsystemctl start caddy php7.4-fpmsystemctl restart caddy php7.4-fpmcaddy与php-fpm联动Caddy 默认的虚拟主机配置文件位于 /etc/caddy/Caddyfile。使用以下命令编辑 /etc/caddy/Caddyfile 文件:vi /etc/caddy/Caddyfile删除所有行并添加以下行::20081 { root * /www encode gzip zstd php_fastcgi unix//run/php/php7.4-fpm.sock handle_path / { try_files {path} {path}/ /index.php/{uri} } # tls /etc/ssl/caddy/513513.key /etc/ssl/caddy/513513.crt }已添加typecho在caddy2里的伪静态规则。保存并关闭文件,然后重新启动 Caddy 服务以应用更改:systemctl restart caddy这个时候应该可以用ip+端口打开了。把网站源码上传到/www下面就可以正常安装了。按提示修改权限。开启SSL,并隐藏端口首先给域名添加DNS,最重要的步骤如图,就可以隐藏掉端口号了。直接在cf的SSL里可以申请15年有证书,以后再也没有更换证书的烦恼了。把证书上传到/etc/ssl/caddy/下面/etc/caddy/Caddyfile 里开启SSL即可。折腾成功演示站https://blog.513513.xyz
京东云99元/年,续费同价。最低50元/年。
2024年01月09日
9,108 阅读
0 评论
0 点赞
2024-01-09
购买地址: https://3.cn/1TS0-vWI 仅限新用户。京东云 2核2G 3M服务器,最低可以50元一年,续费原价。选三年的话,就是296.如果想续费用价,就选2核2G 4M服务器,99元一年。怎么比阿里、轻量都便宜。
在 Amazon SageMaker 上部署 Llama 2 7B/13B/70B
LLaMA 2 是 LLaMA 的下一个版本。它接受更多数据 - 2T 令牌的训练,并支持高达 4K 令牌的上下文长度窗口。Meta 通过基于人类反馈的强化学习对超过 100 万条人类注释进行了微调对话模型。在本博客中,我将记录如何将 Llama 2 模型部署到 亚马逊云科技 Amazon SageMaker上的过程。 Hugging Face LLM DLC,它是一个新的专用推理容器,可在安全且受管理的环境中轻松部署 LLM。该 DLC 由文本生成推理 (TGI)提供支持,这是一种可扩展的优化解决方案,用于部署和服务大型语言模型 (LLM)。文章后面还包括了不同型号尺寸的硬件要求。博客中将按以下步骤介绍如何安装Llama 2:设置开发环境获取新的 Hugging Face LLM DLC硬件要求将 Llama 2 部署到 Amazon SageMaker运行推理并与模型聊天清理1.搭建开发环境我使用sagemaker python SDK 将 Llama 2 部署到 亚马逊云科技 Amazon SageMaker上。并确保配置了 AWS 帐户并安装了 sagemaker python SDK。若没有账号可以点击这里注册亚马逊云科技。!pip install "sagemaker>=2.175.0" --upgrade --quiet如果在本地环境中使用 Sagemaker。需要访问具有 Sagemaker 所需权限的 IAM 角色。可以在这里找到更多相关信息。import sagemaker import boto3 sess = sagemaker.Session() # sagemaker session bucket -> used for uploading data, models and logs # sagemaker will automatically create this bucket if it not exists sagemaker_session_bucket=None if sagemaker_session_bucket is None and sess is not None: # set to default bucket if a bucket name is not given sagemaker_session_bucket = sess.default_bucket() try: role = sagemaker.get_execution_role() except ValueError: iam = boto3.client('iam') role = iam.get_role(RoleName='sagemaker_execution_role')['Role']['Arn'] sess = sagemaker.Session(default_bucket=sagemaker_session_bucket) print(f"sagemaker role arn: {role}") print(f"sagemaker session region: {sess.boto_region_name}")2.获取新的Hugging Face LLM DLC与部署常规HuggingFace模型相比,首先需要检索容器uri并将其提供给HuggingFaceModel模型类,其中image_uri指向图像。要在Amazon Sagemaker中检索新的Hugging Face LLM DLC,可以使用sagemaker SDK提供的get_huggingface_llm_image_uri方法。此方法允许根据指定的后端、会话、区域和版本检索所需Hugging Face LLM DLC的URI。可以在此处找到可用版本from sagemaker.huggingface import get_huggingface_llm_image_uri # retrieve the llm image uri llm_image = get_huggingface_llm_image_uri( "huggingface", version="0.9.3" ) # print ecr image uri print(f"llm image uri: {llm_image}")3.硬件要求Llama 2有3种不同的尺寸-7 B,13 B和70 B参数。硬件要求将根据部署到SageMaker的模型大小而有所不同。下面是我测试的每个型号尺寸的最低要求。注意:我还没有测试GPTQ模型。模型实例类型量化每个副本的 GPU 数量Llama 7B(ml.)g5.2xlarge-1Llama 13B(ml.)g5.12xlarge-4Llama 70B(ml.)g5.48xlargebitsandbytes8Llama 70B(ml.)p4d.24xlarge-8注意:Amazon SageMaker目前不支持实例切片,例如,对于Llama 70B,无法在单个实例上运行多个副本。这些是我已经验证的7B、13B和70B LLaMA 2型号在SageMaker上工作的最低设置。在接下来的几周里,我计划运行详细的基准测试,涵盖不同硬件配置的延迟和吞吐量。目前不建议将Llama 70B部署到g5.48xlarge实例,因为SageMaker的60秒请求超时限制会导致长请求超时。使用p4d实例部署Llama 70B。通过减少MAX_TOTAL_TOKENS和MAX_BATCH_TOTAL_TOKENS参数,可以在没有量化的g5.48xlarge实例上运行Llama 70 B。我还没测试过这个。4.将Llama 2部署到Amazon SageMaker要将meta-llama/Llama-2- 13 b-chat-hf部署到Amazon SageMaker,需要创建一个HuggingFaceModel模型类,并定义端点配置,包括hf_model_id、instance_type等。使用g5.12xlarge实例类型,因为它具有4个NVIDIA A10 G GPU和96 GB GPU内存。注意:此表单用于在获得 Meta 的访问权限后启用 Hugging Face 上的 Llama 2 访问权限。在提交此表格之前,请访问Meta网站 并接受许可条款和可接受的使用政策。请求将在 1-2 天内得到处理。import json from sagemaker.huggingface import HuggingFaceModel # sagemaker config instance_type = "ml.p4d.24xlarge" number_of_gpu = 8 health_check_timeout = 300 # Define Model and Endpoint configuration parameter config = { 'HF_MODEL_ID': "meta-llama/Llama-2-70b-chat-hf", # model_id from hf.co/models 'SM_NUM_GPUS': json.dumps(number_of_gpu), # Number of GPU used per replica 'MAX_INPUT_LENGTH': json.dumps(2048), # Max length of input text 'MAX_TOTAL_TOKENS': json.dumps(4096), # Max length of the generation (including input text) 'MAX_BATCH_TOTAL_TOKENS': json.dumps(8192), # Limits the number of tokens that can be processed in parallel during the generation 'HUGGING_FACE_HUB_TOKEN': "<REPLACE WITH YOUR TOKEN>" # ,'HF_MODEL_QUANTIZE': "bitsandbytes", # comment in to quantize } # check if token is set assert config['HUGGING_FACE_HUB_TOKEN'] != "<REPLACE WITH YOUR TOKEN>", "Please set your Hugging Face Hub token" # create HuggingFaceModel with the image uri llm_model = HuggingFaceModel( role=role, image_uri=llm_image, env=config )创建HuggingFaceModel后,可以使用deploy方法将其部署到Amazon SageMaker。将使用ml.g5.12xlarge实例类型部署模型。TGI将自动在所有GPU上分发和分割模型。# Deploy model to an endpoint # https://sagemaker.readthedocs.io/en/stable/api/inference/model.html#sagemaker.model.Model.deploy llm = llm_model.deploy( initial_instance_count=1, instance_type=instance_type, container_startup_health_check_timeout=health_check_timeout, # 10 minutes to be able to load the model )SageMaker现在将创建端点并将模型部署到其中。这可能需要10-15分钟。5.运行推理并与模型聊天在端点部署之后,可以在它上面运行推理。使用预测器中的predict方法在端点上运行推理。也可以使用不同的参数运行推理来影响生成。参数可以在有效载荷的parameters属性中定义。截至目前,TGI支持以下参数:temperature:控制模型中的随机性。较低的值将使模型更具确定性,较高的值将使模型更加随机。默认值为 1.0。max_new_tokens:生成的最大令牌数。默认值为 20,最大值为 512。repetition_penalty:控制重复的可能性,默认为null。seed:用于随机生成的种子,默认为null。stop:停止生成的令牌列表。当生成其中一个代币时,生成将停止。top_k:为 top-k 过滤保留的最高概率词汇标记的数量。默认值为null,这会禁用 top-k-filtering。top_p:为核采样保留的参数最高概率词汇标记的累积概率,默认为nulldo_sample:是否使用采样;否则使用贪婪解码。默认值为false。best_of:生成 best_of 序列并返回最高 token logprobs 的序列,默认为null。details:是否返回有关该代的详细信息。默认值为false。return_full_text:是否返回全文或仅返回生成的部分。默认值为false。truncate:是否将输入截断为模型的最大长度。默认值为true。typical_p:令牌的典型概率。默认值为null。watermark:生成时使用的水印。默认值为false。可以在swagger文档中找到TGI的开放API规范Meta-llama/Llama-2- 13 b-chat-hf是一个会话聊天模型,这意味着可以使用以下提示与它聊天<s>[INST] <<SYS>> {{ system_prompt }} <</SYS>> {{ user_msg_1 }} [/INST] {{ model_answer_1 }} </s><s>[INST] {{ user_msg_2 }} [/INST]我创建了一个小的辅助方法build_llama2_prompt,它将一个“消息”列表转换为提示格式。我还定义了一个system_prompt,用于启动对话。将使用system_prompt询问模型关于夏天要做的一些很酷的想法。def build_llama2_prompt(messages): startPrompt = "<s>[INST] " endPrompt = " [/INST]" conversation = [] for index, message in enumerate(messages): if message["role"] == "system" and index == 0: conversation.append(f"<<SYS>>\n{message['content']}\n<</SYS>>\n\n") elif message["role"] == "user": conversation.append(message["content"].strip()) else: conversation.append(f" [/INST] {message['content'].strip()}</s><s>[INST] ") return startPrompt + "".join(conversation) + endPrompt messages = [ { "role": "system","content": "You are a friendly and knowledgeable vacation planning assistant named Clara. Your goal is to have natural conversations with users to help them plan their perfect vacation. "} ]让我们看看模型能否为夏天想出一些很酷的主意。# define question and add to messages instruction = "What are some cool ideas to do in the summer?" messages.append({"role": "user", "content": instruction}) prompt = build_llama2_prompt(messages) chat = llm.predict({"inputs":prompt}) print(chat[0]["generated_text"][len(prompt):])现在,使用不同的参数运行推理来影响生成。parameters参数可以在有效负载的属性中定义。# hyperparameters for llm payload = { "inputs": prompt, "parameters": { "do_sample": True, "top_p": 0.6, "temperature": 0.9, "top_k": 50, "max_new_tokens": 512, "repetition_penalty": 1.03, "stop": ["</s>"] } } # send request to endpoint response = llm.predict(payload) print(response[0]["generated_text"][len(prompt):])6.清理要进行清理,可以删除模型和端点。llm.delete_model() llm.delete_endpoint()结论在 Amazon SageMaker 上部署 Llama 2 提供了一种可扩展、安全的方式来利用 LLM。只需几行代码,Hugging Face Inference DLC 就可以让每个人轻松地将强大的 LLM 集成到应用程序中。
2023年12月26日
9,913 阅读
0 评论
0 点赞
2023-06-10
Typecho视频主题ZeVideo开源、助力Typecho多方面发展
ZeVideo一款开源的Typecho视频主题,相对于前段时间放出来的免费版重构了很多东西,也增加了一些功能。功能介绍全站pjax无刷新加载支持根据系统进入深色模式,或手动切换支持记录播放历史功能首页布局支持自定义主题设置支持修改logo,添加统计代码,这是广告位广告等生态方面支持 https://github.com/jrotty/CatClaw 采集插件可对接大部分资源站 json接口支持多条件检索(需要购买这个插件 https://blog.zezeshe.com/archives/gjsoso-typecho.html 【历史原因这个插件一直为付费插件,所以不能免费】)开源地址https://github.com/jrotty/Zevideogithub.com对typecho改动1,让文章根据最后编辑时间排序在 Typecho 的 var/Widget路径下编辑 Archive.php文件,在 764行左右找到如下代码 $select->order('table.contents.created', Db::SORT_DESC) ->page($this->currentPage, $this->parameter->pageSize);将其改为 $select->order('table.contents.modified', Db::SORT_DESC) ->page($this->currentPage, $this->parameter->pageSize);2,修改数据库结构因为是用自定义字段存每集动漫的视频地址的,然而像是柯南这种上千集的,字段数据库表格存不下,所以我将数据库fields表str_value的类型由text改为了mediumtext。截图展示备份下载:[attach]1428[/attach]
2023年06月10日
24,519 阅读
0 评论
1 点赞
2023-06-07
Typecho 1.2.1 更新了
此版本主要是一个安全更新,建议所有用户升级。XSS 漏洞主要是 #1535, #1539, #1545, #1560 这几个 ISSUE 提到的错误。由于参数和对提交数据的过滤不严,造成了站点会被攻击者利用的漏洞。此次修复后你可以安全地打开已经被攻击者污染的评论数据,当然我们建议你删除它们。对 MySQL 的 SSL 支持在某些运行环境中你可能需要通过 SSL 来连接 MySQL 数据库,目前我们已经加上了这一支持。更多的小更新对 PHP 8.1 的更多支持其它 Bug 修复感谢各位贡献者的无私工作。具体更新请见:https://github.com/typecho/typecho/releases/tag/v1.2.0正式版下载:https://github.com/typecho/typecho/releases/latest/download/typecho.zip[attach]1426[/attach]
2023年06月07日
14,782 阅读
0 评论
0 点赞
worker反代Loc,解决不能发帖和投票的 问题
又来一个版本。直接在CF的worker里添加代码。添加路由的时候,记得网址后面有/*又弄了一个演示:https://loc.513513.xyz2023-5-25 16:491.修复头像2.修复交易帖显示缺失直接上代码:/** * write by 西柚论坛 https://www.xiubbs.com */ addEventListener('fetch', event => { event.respondWith(handleRequest(event.request)); }); // 准备反代的目的域名 let target_url = "https://hostloc.com"; // 要替换内容的正则表达式 let target_url_reg = /(?<=\/\/).*?hostloc\.com/g; async function handleRequest(request) { let url = new URL(request.url); url.hostname = new URL(target_url).hostname; // 复制请求对象并更新它的属性 let headers = new Headers(request.headers); headers.set("Referer", target_url); headers.set("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36"); //处理头像的302跳转,处理编辑帖子之后的报错 let redirect = "manual"; if(url.href.indexOf("/uc_server/") > -1){ redirect = "follow"; } const param = { method: request.method, headers: headers, body: request.body, redirect: redirect } let response = await fetch(url, param); // 检查响应头中的内容类型 const contentType = response.headers.get('content-type'); if (contentType && contentType.includes('text')) { // 如果是文本类型,替换响应主体中的URL let responseBody = await response.text(); responseBody = await handleResBody(request,responseBody); // 复制响应对象并更新它的属性 let headers = await handleResHeader(response); return new Response(responseBody, { status: response.status, statusText: response.statusText, headers: headers }); } else { // 如果不是文本类型,直接返回响应对象 return response; } } async function handleResBody(request, responseBody){ responseBody = responseBody.replace(target_url_reg, new URL(request.url).hostname); responseBody = responseBody.replace("<head>", '<head>\n<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">'); responseBody = responseBody.replace("</head>", '<link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/gh/lifespy/css-and-js-hub@0.1/css/responsive.css">\n</head>'); responseBody = responseBody.replace("</body>", '<script src="//cdn.jsdelivr.net/gh/lifespy/css-and-js-hub@0.1/js/polish.js" type="text/javascript"></script>\n</body>'); return responseBody; } async function handleResHeader(resp){ let headers = new Headers(resp.headers); headers.set('Access-Control-Allow-Origin', '*'); headers.set('Access-Control-Allow-Methods', 'GET'); headers.set('Access-Control-Allow-Headers', 'Content-Type'); return headers; }还有一个个nginx版本server { listen 80; listen [::]:80; server_name loc.xiu.ee; #SSL Configuration listen 443 ssl; listen [::]:443 ssl; ssl_certificate /ssl/loc.xiu.ee.crt; ssl_certificate_key /ssl/loc.xiu.ee.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; if ($scheme = http) { return 301 https://$server_name$request_uri; } # proxy to another site location ~/ { proxy_pass https://hostloc.com; proxy_set_header Host hostloc.com; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header referer https://hostloc.com/$request_uri; proxy_set_header Accept-Encoding ""; proxy_set_header User-Agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0"; sub_filter_types *; sub_filter '<base href="https://hostloc.com/">' '<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/gh/lifespy/css-and-js-hub/css/responsive.css" />'; sub_filter 'hostloc.com' 'loc.xiu.ee'; sub_filter '</body>' '<script src="//cdn.jsdelivr.net/gh/lifespy/css-and-js-hub/js/polish.js"></script></body>'; sub_filter_once off; set $static_fileEJLfi5A0 0; if ( $uri ~* "\.(gif|png|jpg|css|js|woff|woff2)$" ) { set $static_fileEJLfi5A0 1; expires 12h; } if ( $static_fileEJLfi5A0 = 0 ) { add_header Cache-Control no-cache; } } }
2023年05月26日
21,669 阅读
1 评论
0 点赞
用CFworkers部署的所以不用担心泄露账号密码问题
用CFworkers部署的所以不用担心泄露账号密码问题所有功能正常源码:https://bijici.com/6wmzHviewhttps://hostloc.us/备份:addEventListener('fetch', event => { event.respondWith(handleRequest(event.request)); }); const TARGET_URL = "https://hostloc.com"; const TARGET_URL_REGEXP = /hostloc\.com/g; const TARGET_HOSTNAME = new URL(TARGET_URL).hostname; const handleRequest = async request => { const url = new URL(request.url); url.hostname = TARGET_HOSTNAME; let headers = new Headers(request.headers); headers.set("Referer", TARGET_URL); headers.set("User-Agent", request.headers.get("user-agent")); const param = { method: request.method, headers: headers, body: request.body, redirect: "manual" } const response = await fetch(url, param); return handleResponse(request, response); } const handleResponse = async (request, response) => { const contentType = response.headers.get('content-type'); let headers = new Headers(response.headers); headers.set('Access-Control-Allow-Origin', '*'); headers.set('Access-Control-Allow-Methods', 'GET'); headers.set('Access-Control-Allow-Headers', 'Content-Type'); let location = response.headers.get('location'); if (location) { location = location.replace(TARGET_URL_REGEXP, new URL(request.url).hostname); headers.set('location', location); } const data = (contentType && contentType.includes('text')) ? await response.text() : await response.blob(); const modifiedData = (typeof data === 'string') ? data.replace(TARGET_URL_REGEXP, new URL(request.url).hostname) : data; return new Response(modifiedData, { status: response.status, statusText: response.statusText, headers: headers }); }PS:我自己也弄了一个反代:https://mjj.513513.xyz
2023年05月25日
20,857 阅读
0 评论
0 点赞
HTML5实现微信聊天气泡效果
HTML5实现微信聊天气泡效果图: 话不多说直接放代码:<div class="container-manc"> <!-- Notice/Center --> <div class="chat-notice"> <span>漫川邀请“汤圆”进入群聊</span> </div> <!-- Left --> <div class="chat-sender"> <div><img src="http://q.qlogo.cn/headimg_dl?dst_uin=82632418&spec=640&img_type=jpg"></div> <div>汤圆</div> <div> <div class="chat-left_triangle"></div> <span>哇!博主的站点真的好好看,请问如何给博主进行留言呢?</span> </div> </div> <!-- Right --> <div class="chat-receiver"> <div><img src="http://q.qlogo.cn/headimg_dl?dst_uin=28422961&spec=640&img_type=jpg"></div> <div>漫川</div> <div> <div class="chat-right_triangle"></div> <span>您可以在下面与博主进行留言,看到会回复您的喔!</span> </div> <!-- Right --> <div class="chat-receiver"> <div><img src="http://q.qlogo.cn/headimg_dl?dst_uin=28422961&spec=640&img_type=jpg"></div> <div>漫川</div> <div> <div class="chat-right_triangle"></div> <span>您的每句话都会记录在漫川站点的数据库里,直到风消失的那天.</span> </div> </div>CSS代码:/*微信聊天气泡*/ .chat-sender{ clear:both; font-size: 80%; } .chat-sender div:nth-of-type(1){ float: left; } .chat-sender div:nth-of-type(2){ margin: 0 50px 2px 50px; padding: 0px; color: #848484; font-size: 70%; text-align: left; } .chat-sender div:nth-of-type(3){ background-color: #efefef; /*float: left;*/ margin: 0 50px 10px 50px; padding: 10px 10px 10px 10px; border-radius:7px; text-indent: -12px; } .chat-receiver{ clear:both; font-size: 80%; } .chat-receiver div:nth-of-type(1){ float: right; } .chat-receiver div:nth-of-type(2){ margin: 0px 50px 2px 50px; padding: 0px; color: #848484; font-size: 70%; text-align: right; } .chat-receiver div:nth-of-type(3){ /*float:right;*/ background-color: #b2e281; margin: 0px 50px 10px 50px; padding: 10px 10px 10px 10px; border-radius:7px; } .chat-receiver div:first-child img, .chat-sender div:first-child img{ width: 40px; height: 40px; border-radius: 10%; } .chat-left_triangle{ height: 0px; width: 0px; border-width: 6px; border-style: solid; border-color: transparent white transparent transparent; position: relative; left: -22px; top: 3px; } .chat-right_triangle{ height: 0px; width: 0px; border-width: 6px; border-style: solid; border-color: transparent transparent transparent #b2e281; position: relative; right:-22px; top:3px; } .chat-notice{ clear: both; font-size: 70%; color: white; text-align: center; margin-top: 15px; margin-bottom: 15px; } .chat-notice span{ background-color: #cecece; line-height: 25px; border-radius: 5px; padding: 5px 10px; }
2023年05月21日
17,027 阅读
0 评论
0 点赞
2023-05-06
typecho评论推送插件Comment2Fanwan
Comment2FanwanTypecho 新评论饭碗警告通知注册送20元余额,发现里面的Telegram是免费的。说明因为微信服务号模板消息将在 2021.04.30 改版,届时 Server酱 将无法正常使用,依赖于它的 Comment2Wechat 也将无法正常使用,故开发此插件使用方法点此下载后解压,将解压后的目录名改为 Comment2Fanwan,然后上传到你的 Typecho 的 /usr/plugins,并在 Typecho 后台开启插件到饭碗警告里创建规则,并将触发方式设置成 Webhook,接着创建五个变量名 和 键为后面所列的模板变量:title、author、comment、created_at、url, 可参考以下截图: 最后在通知正文添加{{ author }} 于 {{ created_at }} 在您的文章<a href="{{ url }}">《{{ title }}》</a>发表了评论: {{ comment }}当然,你也可以按照你的喜好修改文案,本插件会向饭碗推送 title、author、comment、created_at、url 这几个模板变量,在正文中用诸如 {{ author}} 的写法即可,它会动态替换将你创建的规则的 Webhook 地址填到插件设置里,保存即可。本站备份下载:[attach]1421[/attach]
2023年05月06日
22,357 阅读
3 评论
1 点赞
2023-05-02
Typecho 附件下载增强插件
从 Attachment 插件增强而来。修改附件短码[attach]id[/attach] 从 Attachment 改名 点击附件按钮自动填写[attach]id[/attach] 增加原文件名下载(隐藏真实路径) 增加内置统计功能(带开关) 支持 CDN 路径替换Accessories 更新到 1.0.8支持更多编辑器(Ueditor,Vditor)支持图片短代码,换域名也不怕图片链接不对啦(图片链接也支持cdn)下载地址:[attach]1419[/attach]
2023年05月02日
16,985 阅读
0 评论
0 点赞
1
2
...
64