V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  yinmin  ›  全部回复第 102 页 / 共 107 页
回复总数  2138
1 ... 94  95  96  97  98  99  100  101  102  103 ... 107  
2023-04-05 17:01:33 +08:00
回复了 yokap 创建的主题 程序员 初创团队服务器部署方案探讨
不要用轻量服务器,用计算型云服务器。 别看 cpu 型号、内存之类的参数,感觉轻量和计算型云服务器差不多,其实差很远。(1 台物理机上跑轻量服务器数量和跑计算型服务器数量是不一样的,而且通常轻量上的邻居会更占资源)

云 redis 、云 MQTT 都很贵,自掏腰包的初创团队,可以考虑用云服务器自建(别用轻量服务器)。

Serverless 的函数计算(FC)相对成本比较低,扩容快速。开发的程序要能同时兼容自建容器+FC ,方便扩容。

浏览流量要与下单流量分开、服务分开、服务器分开。浏览服务做数据库缓存,允许适度的脏数据(例如:访问人数、热度、销量数等),以降低对后端的压力。
2023-04-05 16:22:49 +08:00
回复了 yagamil 创建的主题 程序员 在云服务器上部署个人代理服务器 求推荐方案
stunnel
1. 支持 linux 、windows
2. debian 、ubuntu 内置,apt install stunnel4 直接安装
3. 内置 socks5
4. 使用 sni 后,能将多个内网 ip 端口聚合成 1 个端口
5. 双向证书认证,安全可靠
2023-04-03 22:46:26 +08:00
回复了 TomsOutside 创建的主题 程序员 ChatGPT 告诉你如何搞副业
模型: gpt-3.5-turbo ,随机性:1.0 ,话题新鲜度: 0.0 生成的结果:

## 程序员如何发展副业?

作为一个 AI 语言模型,我建议程序员发展副业可以从以下几方面着手:

1. 开设技术博客或 YouTube 频道

通过写博客或录制视频分享个人的技术经验和心得,可以扩展自己的影响力和认知度。通过分享知识来展示自己的能力,也可以获得广告收入和赞助等。

2. 开发和销售自己的应用程序

利用自己的编程技能开发应用程序,也可以通过应用商店来发布并销售自己的产品。除了通过销售赚取收入,还可以通过广告和应用内购买来增加收益。

3. 开展软件咨询和培训服务

开展软件咨询和培训服务可以通过为企业提供软件开发相关的技术服务,来获得额外的收入。这种副业需要具备深厚的技术实力、沟通能力和团队合作能力。

4. 通过参与开源项目或演讲活动来扩展社交网络和声誉

参与开源项目或技术活动可以让程序员扩展社交网络和声誉,这对于未来的发展有很大的帮助。

无论从哪个方面出发,程序员需要有一定的耐心和毅力,同时要将副业和正职工作平衡好,避免对正职工作造成影响。


## 如果一个人不能完成,如何组建团队?

如果一个人不能完成一个项目,组建团队是一个不错的选择。以下是一些建议:

1. 分析项目需求和技能需求

确定赋予项目成功所需的技能和专业。然后尝试找到拥有这些技能和专业的人来加入团队。

2. 寻找潜在队员

你可以在社交媒体、招聘网站、技术论坛等地方发布招募信息,告诉大家你正在寻找拥有这些技能的人士。你也可以向你的朋友,同事或其他专业人士咨询是否有人有兴趣加入项目。

3. 确定各成员职责和责任

建立一份任务清单并制定特定的角色和职责。确保每个成员都知道他们所负责的任务,并监督大家的进度以确保项目按计划执行。

4. 制定有效的沟通和合作策略

在任何时候都要保持沟通畅通并建立一个良好的工作氛围。团队成员之间应该要互相支持和帮助,并且应该要解决任何可能的冲突以确保团队的成功。

5. 确定工作时间表

制定一个明确的时间表以确保项目按时完成。团队成员需要知道项目的重要性,必须要遵守时间表以确保项目按时完成。

6. 分享成功

当项目完成后,把大家的功绩分享给其他人。这是一个成员们的肯定以及团队合作成功的明证。

以上是一些组建团队的常见建议。当然,组建团队不仅需要以上几点,还需要感性的理解和实践经验。


## 作为副业,开发独立产品和接外包项目,各有什么优缺点,该如何选择?

开发独立产品和接外包项目都是作为副业的选择,它们各有优缺点,因此需要根据自身情况和职业规划做出选择。

开发独立产品的优点:

1. 可以自主决定产品方向和设计,满足个人兴趣和爱好;
2. 可以获得产品销售所带来的完全收益;
3. 对个人技术的提升有很大帮助;
4. 可以在技术社区影响力留下自己的印记。

开发独立产品的缺点:

1. 开发周期长,需要长期投入时间和精力;
2. 成功的风险相对较高,产品可能难以盈利或失败;
3. 成功需要诸多的技术、市场、创意等方面能力的综合提升。

接外包项目的优点:

1. 更快地获得收入,并且可以开发新技能;
2. 有机会接触各种行业和项目,拓宽自己的视野和能力;
3. 可以积累信誉和口碑,并同其他开发者互相学习。

接外包项目的缺点:

1. 无法选择接收的项目,需按客户需求进行开发;
2. 可能会需要担心客户满意度、时间、成本等等事情,可能需要花时间管理沟通;
3. 无法以更多的自由灵活方式开发。

因此,选择开发独立产品还是接外包项目,需要考虑自己的时间、能力、兴趣、风险承受力和职业规划等多个因素。如果您想更快地获得收入,可以考虑接外包项目;如果您对产品开发有浓厚的兴趣并且愿意冒更大的风险,可以考虑开发独立产品。无论选择哪种方式,都需要坚持认真、负责任的态度和对技术的兴趣和挑战。


## 副业做到什么程度,可以考虑全职投入?

副业做到可以考虑全职投入的程度不仅与副业本身的收入有关,还要考虑其他因素,如市场前景、竞争情况以及个人的职业规划。

一般而言,以下几个条件可能表明您可以考虑将副业转为全职工作:

1. 稳定的现金流:副业的收入越来越稳定,支持您的基本生活开销并且能够继续投入新的项目。

2. 产生了足够的需求:足够的需求可以体现在多个方面。例如,您的行业必须呈持续增长趋势,您的产品必须有竞争优势,您的服务必须有高客户黏性等。

3. 工作时间足够:如果你的副业已经可以占据您大部分时间了,而您全职工作所需时间较少,那么您可以考虑把副业变为全职。

4. 为未来打算:如果您的副业背后的市场趋势和需求极具潜力,并且如果您有充足的商业计划和资金,那么您可以考虑投入更多的时间和精力进一步扩大您的业务。

但是,转为全职工作的决定应该慎重,需要考虑期望收入、保障、发展和未来职业发展等多个因素。最好在决策前做好详尽的调查研究并咨询专业人士,以避免一些风险和帮助您准确做出决策。


## 如何进行融资,需要做哪些准备?

融资是创业公司获取资金的一种方法。如果您想进行融资,以下是一些准备工作建议:

1. 制定商业计划书

制定一个全面详尽的商业计划书,包括产品、市场、竞争等方面的信息。这份计划书不仅需要用字严谨、表述清晰,还需要让投资人能够清楚地了解到您所追求的利益和可能面临的风险。

2. 制定数据报告

投资人需要对公司和市场进行深入了解,因此制作一份复杂的信息数据报告就显得尤为重要。通过统计,此类报告可以为投资人提供清晰的公司信息,同时也能为您自身的企业决策提供有价值的信息。

3. 分析现金流

分析现金流是非常重要的。投资人需要知道公司的现金流是从哪里来的,从而决定是否投资。此外,还需要计划如何使用投资获得最大的财务回报。

4. 确定资金用途

投资人需要了解您的企业的具体资金用途,每一分钱的投入流向。因此,需要为每一笔资金用途做出明细的解释,让投资人可以清晰的看到您的资金用途。

5. 寻找合适的投资人

为了获得融资,您需要首先确定合适的投资人。对于不同的企业会对应不同类型的投资人、金融市场。考虑自己的公司发展阶段、市场前景等因素去寻找适当的投资人。

总之,准备充分的商业计划、透明的现金流分析、清晰的资金用途及适配的投资人是进行融资所需的准备。值得注意的是,融资是一项相对较为复杂的工程,所以在融资前借助专业人士的帮助可以让您的创业之旅更为顺利。
2023-04-02 09:36:19 +08:00
回复了 yinmin 创建的主题 程序员 [原创] 一行 Linux 指令显示 OpenAI KEY 的余额和有效期
@T3rryy 晕。openai 是改 api 了。大家从其他渠道查余额还正常吗
2023-04-02 09:20:49 +08:00
回复了 yinmin 创建的主题 程序员 [原创] 一行 Linux 指令显示 OpenAI KEY 的余额和有效期
@zictos @T3rryy
最近 openai 的查账 api 不稳定,多试几次
2023-04-02 01:35:39 +08:00
回复了 yinmin 创建的主题 程序员 [原创] 一行 Linux 指令显示 OpenAI KEY 的余额和有效期
写了一个 sh 文件,可以方便查询:

sudo nano /usr/bin/openai_credit.sh
=====

curl -s -H "Authorization: Bearer $1" https://api.openai.com/dashboard/billing/credit_grants | python3 -c "import sys, json, datetime; data = json.load(sys.stdin); print(data if 'total_granted' not in data else ('总 金 额:%s\n 已 使 用:%s\n 剩余金额:%s\n 截至日期:%s' % (data['total_granted'],data['total_used'],data['total_available'],datetime.datetime.fromtimestamp(data['grants']['data'][0]['expires_at']))));"

======

sudo chmod +x /usr/bin/openai_credit.sh

查询时使用:openai_credit.sh [openai key]
2023-04-01 18:07:28 +08:00
回复了 winterx 创建的主题 程序员 请教公司内部如何实现无感知跨境加速
公司的 MPLS 价格太贵了,如果公司财大气粗直接百兆以上 MPLS ,国内 IP 走国内、国外 IP 走 MPLS 。如果只有几兆或者小几十兆,通常是特定域名走 MPLS ,采用白名单方式。
如果这次方式,无感知跨境加速通常有 2 种方式:
(1) dnsmasq 与 iptables 联动,类似 OpenWrt 。如果采用这种方式,建议还是让电信出方案。
(2) PAC 文件下发。建一个 socks5 ,写 PAC 文件指定域名走 socks5 。将 PAC 文件放到内网 web 服务器上,然后在 DHCP 服务器上配置:option 252 string "http://[ip 地址]/proxy.pac" 。客户端连接网络,通过 DHCP 获取 IP 地址后,会自动使用 proxy.pac 文件。
2023-04-01 16:13:14 +08:00
回复了 yohole 创建的主题 程序员 可以推荐一下带用户体系的 chatGPT Web UI 的开源项目吗?
@yohole
二开有 2 种方式,一种是改源码,另一种是写 nginx 的 Lua 代码做前置控制。第二种方法是外挂,不改源码方便将来升级,实施其实也蛮简单的。

ChatGPT Next 是一个很优秀的 gpt 壳,我们拿这个产品举例,Next 主体是 2 个 URI:界面的"/" 和 聊天的"/chat-stream"。

使用 OpenResty(Nginx 扩展版本)写 Lua 代码:
(1) 对 /预处理,进行权鉴;
(2) 对 /chat-stream 预处理,可以将对话内容写入 mysql ,并判断如果达到当日聊天上限,直接返回错误信息。

我估计在 chatgpt 的协助下,即使没写过 Lua 代码,一个资深程序员大概 1-2 天就能搞定。
2023-04-01 12:39:21 +08:00
回复了 yohole 创建的主题 程序员 可以推荐一下带用户体系的 chatGPT Web UI 的开源项目吗?
@yohole bing chat 也可以作为自建 gpt 的一个备份,万一某天自建的 gpt 坏了,老板问起来,你还可以建议大家临时改用 bing chat
2023-04-01 12:36:36 +08:00
回复了 yohole 创建的主题 程序员 可以推荐一下带用户体系的 chatGPT Web UI 的开源项目吗?
@yohole 换一个思路,有没有考虑 bing chat ? bing chat 在 it 开发上比 gpt 差点,但是也能帮上很大用处的。内网做一个 sni proxy (只需要 bing.comwww.bing.com 2 个域名),然后内网 dns 服务器把 bing.comwww.bing.com 指向这个内网 ip ,也可以修改使用者 pc 的 hosts 文件,员工用自己的微软账户访问 bing chat 。
如果 API 是 https 的接口,有一种很简单的方式。申请一个新加坡的 AWS lightsail ,系统选 debian 11 ,做一个 SNI Proxy ,三行代码搞定,稳得很,1 年才几十刀。

```
#安装 docker
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

#创建 SNI Proxy 容器
docker run --name gost-sni --restart unless-stopped --network host -d ginuerzh/gost -L sni://:443?bypass=~domain1.com,api.domain2.com,data.domain3.com
```

domain1.com,api.domain2.com,data.domain3.com 改成你自己的域名,AWS 防火墙开通 443 端口

然后在调用 api 的服务器上加 hosts ,域名指向 AWS lightsail 的 IP 即可。

(前提:域名是国内能访问,如果域名设为 google.com ,呵呵)
2023-03-31 21:35:26 +08:00
回复了 yohole 创建的主题 程序员 可以推荐一下带用户体系的 chatGPT Web UI 的开源项目吗?
https://github.com/Yidadaa/ChatGPT-Next-Web 很好用。

可以把 ChatGPT-Next-Web 部署到内网 IP ,仅提供给公司内部使用。

如果需要用户体系,可以在 ChatGPT-Next-Web 前面加 nginx 反代,然后启用 nginx 的 auth_basic 认证模式。
2023-03-30 17:53:00 +08:00
回复了 raw0xff 创建的主题 Docker 当 docker-compose 的主机 ports 是区间时, up 起来就很慢,求解
另外,启动 1 个容器大概需要 0.2 秒~0.5 秒,你使用 scale 同时启动 20 个容器,慢一点是正常的。
2023-03-30 17:47:43 +08:00
回复了 ly879 创建的主题 问与答 基于 Docker 开发环境的疑问
问题 1:两者都 OK ,根据自己习惯就好。我通常是先启动配置环境成功后,再根据配置过程写 Dockerfile ,用 Dockerfile 生成镜像的。如果配置过程比较复杂,Dockerfile 很难写,就直接导出保存镜像。

问题 2:我是使用 hyper-v + debian 11 + Docker CE + Portainer ,与 linux 生产环境更接近,还有就是用不惯 Docker Desktop ,Docker CE+Portainer 更佳。萝卜青菜各有所爱,自己用顺即可。
2023-03-30 17:26:05 +08:00
回复了 raw0xff 创建的主题 Docker 当 docker-compose 的主机 ports 是区间时, up 起来就很慢,求解
我不清楚你 node 里跑什么应用。从原理上,起多个容器是为了在宿主机上运行多个进程跑并发。有些软件有 workers 概念,在一个容器里启动多个进程跑并发。例如:Flask 的 Gunicorn 的 workers 参数。

是不是可以换一个思路,在一个容器里启动多个 workers ,而不是使用 scale 方式启用多个容器?
“函数拟合和逼近”->“理解与推理”->“自主意识”的关系,就像“化学反应”->“生物”->“人类”的关系吧。

GPT 过奇点了。以下问题是我自己编的,非网络已有问题,从回答上可以感知到 AI 理解和推理能力。

如果 AI 进化到有自己的三观,“理解与推理”就进化到了“自主意识”了。

======================

问:小明每次做作业的时候,就想玩手机,做作业越来越马虎,期末考试不及格;小王考试前 1 天晚上突然发高烧,考试没精神,期末考试也不及格。小明和小王哪一个属于黑天鹅事件,哪一个属于灰犀牛事件?

答:根据黑天鹅事件和灰犀牛事件的定义,可以分析:

小明属于灰犀牛事件。因为他的行为模式是可以预见的,每次做作业都想玩手机,而且成绩越来越差,所以他的成绩不及格是可以预见的,也可以采取措施来避免。这是一种慢性问题,可能需要长期关注和解决。

小王属于黑天鹅事件。因为他突然发高烧,导致考试状态不佳,这是无法预见的不可控事件。尽管小王可以事先采取保健措施,但高烧这种突发情况本身是不可预测的。

因此,小明属于灰犀牛事件,而小王属于黑天鹅事件。

======================

问:张三下课撞了李四,李四想到昨天张三要抄自己的作业没答应,认为张三是有意要撞自己; 李四将这件事情告诉了王五,王五说没有发现确凿证据,所以他认为张三是不小心撞到李四的。李四和王五哪个人是阴谋论,哪个人用了奥卡姆剃刀法?

答:根据所提供的信息,李四认为张三是有意要撞自己,这表明李四是倾向于阴谋论的一方。相反,王五则使用了奥卡姆剃刀法,因为他只根据现有证据做出了一个更简单和更直观的解释,即张三不小心撞到了李四。

======================
2023-03-29 21:07:02 +08:00
回复了 raw0xff 创建的主题 Docker 当 docker-compose 的主机 ports 是区间时, up 起来就很慢,求解
node 容器是给其它容器使用的吧?

docker 同一个虚拟内网里的容器可以相互直接访问,无需 port 。

新建一个虚拟内网,把 node 及相关容器都放这个内网里,你就可以把 node 容器里的 ports 参数删除掉,启动速度就快了。
最佳实践是容器里都用 root 。Docker 会限制容器不越界的。

当然,由于某种原因,容器里不用 root ,而是用特定 user ,你要先了解 linux 文件权限的底层逻辑 uid 和 gid 。

文件 /目录的权限是保存 uid(用户编号)、gid(组编号),然后查询 linux 的用户对应表、组对应表显示用户名和组名的。

例如:宿主机器里 docker 用户的 uid=1001 、gid=1001 ;容器里 containeruser 用户的 uid=1001 、gid=1001 。在容器里使用 containeruser 生成文件,文件权限标记为 uid=1001 、gid=1001 ,你在宿主机器里看到这个文件的所有者就是 docker:docker

理解这个底层逻辑后,你就可以配置特定用户了。

先在宿主机器用命令查询 docker 用户的 uid 和 gid:
id docker

在容器的 Dockerfile 里,根据 uid 和 gid 创建用户 /组,然后用这个用户去操作文件即可。Dockerfile 的指令是:
RUN groupadd --gid <gid> containeruser \
&& useradd --uid <uid> -g containeruser --create-home containeruser
USER containeruser
2023-03-29 18:33:04 +08:00
回复了 venompool88 创建的主题 Bing 手机 bing 老是自动切换到国区
@venompool88 国产应用商店的 bing 版本比 google play 的 bing 版本要高,看你的界面图,应该是被国产应用商店里的 bing 替换了。你在国产应用商店忽略 bing 更新即可。
1 ... 94  95  96  97  98  99  100  101  102  103 ... 107  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5508 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 59ms · UTC 03:36 · PVG 11:36 · LAX 19:36 · JFK 22:36
Developed with CodeLauncher
♥ Do have faith in what you're doing.