2024-08 跑步日记

2024-08 运动次数: 12 运动距离: 109.93 km 运动时长: 11:02:18 平均距离: 9.16 km 平均心率: 150 bpm 平均配速: 6:01 / km 2024-08-01 时间: 2024-08-01 07:38:34 距离: 7.05 km 时长: 44:15 配速: 6:16 / km 心率: 143 bpm ...

八月 30, 2024 · 1 分钟 · 210 字 · Jogger ·  跑步

跑步记录自动生成Markdown发布博文

通过yihong0618大佬的running_page实现跑步记录自动生成博文,自动发布的工作核心如下图所示。 graph TB subgraph APP [APP Type] direction LR Garmin ~~~ Nike Nike ~~~ Keep end subgraph run [running_page] direction LR laps_drawer --> running_page running_page --> id1[(data.db)] end APP --> running_page id1[(data.db)] -->|gen_svg gen_md|obsidian obsidian --> |maestral|Hugo 首先简单介绍一下yihong0618大佬的running_page功能,支持Nike、Strava、佳明(佳明中国)及 Keep 等自动备份 GPX 数据,生产静态的网页数据,打造个人跑步主页。它是这样工作。 接下来介绍我是怎么使用,我平时是使用Garmin(佳明)手表,数据会通过APP上传到佳明中国。使用步骤如下: 通过running_page使用Garmin-CN to Garmin功能实现数据同步到本地,还实现了一个很棒的功能将数据同步到佳明全球。这个时候你可以通过在Strava里配置,实现将佳明全球的数据同步到你的Strava账号下。 python3 run_page/garmin_sync_cn_global.py $garmin_cn_secret $garmin_secret 生成跑步路线svg和对应的md文件,示例20240317(21.12 km),参考running_page的功能,自己编写的一个生成跑步路线的laps_drawer(示例代码),通过调用gen_svg(示例代码)实现跑步路线的svg文件,然后再统计了一些跑步的统计信息,生产跑步记录md文件。 # gen_svg.py 文件放到running_page工程下的run_page目录,参数参考说明,程序会自动将生成到$blog_path下,需要看代码修改一些相对位置 # laps_drawer.py 文件放到running_page工程下的run_page/gpxtrackposter目录 python3 run_page/gen_svg.py --from-db --title "Running Maps" --type laps --athlete $athlete --track-color "#6B9CF0" --special-color "#83C67B" --special-color2 "#E49A52" --special-distance 10 --special-distance2 15 --min-distance 0.5 --use-localtime --only-run --background-color "#1A1A1A" --animation-time 20 --no-background --blog-dir $blog_path 生成跑步总结统计数据,示例跑步总结,参考running_page的功能,提取跑步信息,结合EChart生成跑量和趋势图。这里也是自己编写的一个python程序gen_md(示例代码)。 # gen_md.py 文件放到running_page工程下的run_page目录,参数参考说明,程序会自动将生成到$blog_path下,需要看代码修改一些相对位置 python3 run_page/gen_md.py --from-db --use-localtime --only-run --min-distance 0.5 --track-color "#6B9CF0" --special-color "#83C67B" --special-color2 "#E49A52" --blog-dir $blog_path Obsidian可以查看生成的md文件,根据文件的位置再调整python程序的相对路径。 通过maestral将新生成的文件自动同步到服务器,然后Hugo编译发布成静态页面。

八月 17, 2024 · 1 分钟 · 110 字 · Byter ·  Garmin ·  Run

2024-07 跑步日记

2024-07 运动次数: 15 运动距离: 136.90 km 运动时长: 13:35:35 平均距离: 9.13 km 平均心率: 148 bpm 平均配速: 5:57 / km 2024-07-01 时间: 2024-07-01 06:59:02 距离: 4.55 km 时长: 27:58 配速: 6:09 / km 心率: 134 bpm ...

七月 28, 2024 · 2 分钟 · 258 字 · Jogger ·  跑步

MacOS好用软件推荐

1. IINA https://iina.io/ IINA(/ˈiːnə/)是一款基于mpv的自由及开源媒体播放器,以GNU通用公共许可证版本3(GPLv3)发布,用Swift编写,仅支持macOS平台。 Mac 上最万能的视频播放器,是一款非常轻量级的视频播放器。 2. Obsidian https://obsidian.md/ Obsidian,是使用Markdown语法的闭源笔记软件。用户可以在笔记间建立双向链接,并且可以神经网络图的形式将这些链接可视化。该笔记旨在帮助用户以一种灵活的、非线性的方式来组织和构架他们的想法和知识。Obsidian对个人使用免费,对商业许可则需付费。 现在的笔记都迁移到Obsidian了,太爱了,有很多插件可以用。 3. TextMate https://macromates.com/ TextMate是一个由Allan Odgaard开发的macOS系统下的GUI文本编辑器,提供声明式定制、打开多文档、可记录宏、可折叠文字片段和可扩展Bundle等功能。 平时随手记些文字,后期整理到Obsidian,对文件类型支持比较多 4. Raycast https://www.raycast.com/ 功能强大的生产力工具集合在一个可扩展的启动器中。快速、人性化、可靠。 替换了原来的Alfred,插件丰富,还可以支持自己写脚本 5. Easydict https://github.com/tisfeng/Easydict Easydict 是一个简洁易用的词典翻译 macOS App,能够轻松优雅地查找单词或翻译文本。Easydict 开箱即用,能自动识别输入文本语言,支持输入翻译,划词翻译和 OCR 截图翻译,可同时查询多个翻译服务结果,目前支持 有道词典,🍎 苹果系统词典,🍎 苹果系统翻译,OpenAI,Gemini,DeepL,Google,腾讯,Bing,百度,小牛翻译,彩云小译,阿里翻译 和 火山翻译。 结合ChatGPT实用划词翻译的功能太棒了 6. 沉浸式翻译 https://immersivetranslate.com/ 沉浸式翻译:全网口碑炸裂的双语对照网页翻译插件 你可以完全免费地使用它来实时翻译外语网页,PDF翻译,EPUB电子书翻译,视频双语字幕翻译等。 还可以自由选择调用OpenAI (ChatGPT)、DeepL、Gemini等人工智能引擎来翻译上述内容。 在手机上也可以随时随地用哦,真正帮助你打破信息壁垒,选择下方的平台,立刻开始体验:)

七月 27, 2024 · 1 分钟 · 46 字 · Byter ·  MacOS

2024-06 跑步日记

2024-06 运动次数: 15 运动距离: 166.24 km 运动时长: 16:21:46 平均距离: 11.08 km 平均心率: 154 bpm 平均配速: 5:54 / km 2024-06-01 时间: 2024-06-01 06:47:29 距离: 15.15 km 时长: 1:34:10 配速: 6:12 / km 心率: 151 bpm ...

六月 29, 2024 · 2 分钟 · 258 字 · Jogger ·  跑步

如何体验 Chrome 内置 Gemini Nano 大模型?

最近谷歌在Canary 版本的 Chrome 浏览器里面开放了本地大模型的权限,用户可以访问(https://www.chromium.org/getting-involved/dev-channel/),下载 Canary 浏览器。 用法如下: 打开 chrome://flags/ 将 Prompt API for Gemini Nano 设置为 Enable 将 Enables optimization guide on device 设置为 Enable BypassPerfR 重启 Chrome 浏览器 打开 chrome://components/ 检查是否出现 Optimization Guide On Device Model ,我出现这个选项等了有几天,没有找到好的方法。如果有这个选项,可以检查模型是否成功下载,点击 Check for update ,我目前的版本是Version: 2024.6.5.2205 。 Gemini Nano的模型文件存放在~/Library/Application Support/Google/Chrome Canary/OptGuideOnDeviceModel/2024.6.5.2205 目录下,weights.bin 文件大概1.78GB。 测试AI效果 打开控制台,输入 window.ai 测试是否能有返回AI对象,也可以用下面的代码测试: const canCreate = await window.ai.canCreateGenericSession() if (canCreate !== "no") { const session = await window.ai.createTextSession(); const stream = session.promptStreaming("写一个短篇科幻小说!") for await (const chunk of stream) { console.log(chunk) } session.destroy() } else { console.error("Gemini Nano not ready yet.", canCreate) } 刚刚返回的结果: ...

六月 23, 2024 · 1 分钟 · 113 字 · Byter ·  AI

Hugo集成ECharts生成心仪的图表

先看集成ECharts的图表展示效果,整体文章效果可以跳转到 跑步总结: ECharts模块安装 模块GitHub地址:hugomods / echarts ECharts地址:ECharts Dist 在使用说明提到的安装使用说明,没有成功,可能是我的使用方式不对,一致没有出来效果,后面安装方式采用之前博客里安装主题的方式,如果按照我提供的方式进行,建议阅读 Hugo个人博客搭建 。 在GitHub下载echarts模块的最新程序包,包的结构如下: echarts ├── assets # TypeScrpt/JS资源 │ └── mods │ └── echarts ├── layouts # 站点样式 │ ├── _default │ ├── partials │ └── shortcodes └── …… # 其他文件 从上面提供的第2个链接下载echarts.js放到assets/mods/echarts 。 如需要加速echarts.js的加载速度,可以在ECharts在线定制 ,可以减小JS文件大小,加速加载速度。 将上面的assets、layouts 目录中文件拷贝到博客相应的目录,其他模块的文件可以忽略,博客目录参考如下: bytejog ├── archetypes # 站点文章模板 │ └── default.md ├── assets # 需要被处理的资源 (SCSS、TypeScrpt 等) ├── content # 站点文章 ├── data # 配置文件 ├── hugo.yaml # 站点配置文件 ├── i18n # 国际化文件 ├── layouts # 站点样式 ├── static # 静态资源 (图片、CSS、JavaScript 等) └── themes # 主题 修改layout/_default/baseof.html文件 ...

六月 8, 2024 · 2 分钟 · 372 字 · Byter ·  ECharts

[译]50天学习人工智能/机器学习:从入门到精通(适用于非计算机科学背景人员)

简介 该网页为非计算机专业背景的人提供了一个学习人工智能/机器学习的 50 天路线图,强调解决问题的思维方式、学习和认证比技术背景或学位更重要。 摘要 题为 “50 天学习人工智能/机器学习 :从零到英雄(非计算机专业背景)“的内容旨在帮助对人工智能/机器学习感兴趣的非计算机专业背景的个人,提供一个学习必要技能的 50 天路线图。该路线图假定读者对高中数学、线性代数、矩阵以及一些统计学和概率论有基本的了解。它包括 Python、Numpy、Pandas、Matplotlib、TensorFlow 和其他工具的学习资源,以及完成 Andrew Ng 的机器学习专业课程。路线图强调,要想在人工智能/机器学习领域取得成功,只需具备解决问题的思维方式、学习意愿和一些证书。 建议 作者认为,非计算机专业背景的人也可以通过正确的心态和资源学习人工智能/机器学习。 作者强调了解决问题的心态和学习意愿的重要性,而不是技术背景或学位。 作者建议,对高中数学、线性代数、矩阵以及一些统计学和概率论有基本了解,就足以开始学习人工智能/机器学习。 作者建议完成 Andrew Ng 的机器学习专业课程,作为 50 天路线图的一部分。 作为路线图的一部分,作者提供了学习 Python、Numpy、Pandas、Matplotlib、TensorFlow 和其他工具的资源。 作者鼓励个人练习编码和完成实践练习,以巩固所学知识。 作者承认,学习人工智能/机器学习 有时会让人感到沮丧,并建议在必要时休息一下。 对人工智能感兴趣?非计算机专业背景?看起来像珠穆朗玛峰?不知道从哪里开始?或者要怎样才能达到目标?我能感受到你的心情。 如果你想知道你能不能做到,以及如何做到,请稍等片刻。你不会后悔的那么,让我们进入正题。 学习的基础需要什么? 你只需要一点这方面的能力、解决问题的心态、学习的意愿和一些证书。请放心,你绝对不需要任何技术背景,也不需要 计算机/人工智能 学位。 这个备忘录可能会让你轻松一些。你只需输入 import keras,keras 就会为你完成所有复杂的工作。你只需知道发生了什么。 Credits: https://m.facebook.com/groups/1638417209555402/ 这是我 50 天内学习机器学习的“试错”之旅,经过提炼整理,更加有条理。 假设你在高中时认真上过数学课,对线性代数、矩阵、统计学和概率论略知一二,那么我们就可以进入第 1 天,马上开始真正的学习。 第1天 机器学习专项课程,作者:Andrew Ng Deeplearning.ai YouTube 频道和 Coursera 提供 5 小时的课程。 第 2-3 天 Python:基本了解和练习。了解从 PRINT 到 FUNCTIONS 和 CLASSES 的所有内容。 ...

六月 5, 2024 · 2 分钟 · 254 字 · Byter ·  AI

2024-05 跑步日记

2024-05 运动次数: 15 运动距离: 140.04 km 运动时长: 14:07:45 平均距离: 9.34 km 平均心率: 147 bpm 平均配速: 6:03 / km 2024-05-02 时间: 2024-05-02 07:08:15 距离: 10.15 km 时长: 1:06:38 配速: 6:30 / km 心率: 138 bpm ...

五月 30, 2024 · 2 分钟 · 258 字 · Jogger ·  跑步

Nginx 实践:同一端口为多个域名配置独立的 SSL 证书

Nginx 支持在同一个监听端口上配置多个虚拟主机(虚拟服务器),并且可以为每个虚拟主机配置不同的域名和证书。通过使用 server 块来实现这一点,每个 server 块可以有自己的域名和 SSL 证书配置。 下面是一个示例配置,展示了如何在同一个监听端口(例如 443 端口)上配置两个不同的域名,并为它们配置不同的 SSL 证书: # 配置第一个域名 server { listen 443 ssl; server_name example1.com; ssl_certificate /path/to/example1.com.crt; ssl_certificate_key /path/to/example1.com.key; location / { root /var/www/example1; index index.html; } } # 配置第二个域名 server { listen 443 ssl; server_name example2.com; ssl_certificate /path/to/example2.com.crt; ssl_certificate_key /path/to/example2.com.key; location / { root /var/www/example2; index index.html; } } 在这个配置中: listen 443 ssl; 指定 Nginx 监听 443 端口,并启用 SSL。 server_name 指定虚拟主机的域名。 ssl_certificate 和 ssl_certificate_key 指定每个域名对应的 SSL 证书和私钥。 location 块内配置了每个域名对应的文档根目录。 这样,当用户访问 https://example1.com 时,Nginx 会使用 example1.com 的证书和配置;当用户访问 https://example2.com 时,Nginx 会使用 example2.com 的证书和配置。 ...

五月 26, 2024 · 1 分钟 · 127 字 · Byter ·  Linux ·  Nginx ·  SSL