淘优惠

淘优惠

使用TensorFlow代理进行强化学习

热门文章 0

Some weeks ago, I wrote an article naming different frameworks you can use to implement Reinforcement Learning (RL) in your projects, showing the ups and downs of each of them and wondering if any of them would rule them all at some point. Since then, I’ve come to know TF Agents, a library for RL based on TensorFlow and with the full support of its community (note that TF Agents is not an official Google product but it is published as a repository from the official TensorFlow account on Github).

几周前,我写了一篇文章,命名了可用于在项目中实施强化学习(RL)的不同框架,展示了每个框架的起伏,并想知道它们是否会在某个时候统治所有框架。 从那时起,我开始了解TF Agents ,这是一个基于TensorFlow并在其社区的全面支持下用于RL的库(请注意,TF Agents不是Google的官方产品,但它是来自TensorFlow官方帐户的存储库发布的在Github上)。

I am currently using TF Agents on a project and it has been easy to start with it, thanks to its good documentation including tutorials. It is updated regularly and has lots of contributors, which makes me think it is possible we will see TF Agents as the standard framework for implementing RL in the near future. Because of this, I’ve decided to make this article to give you a quick introduction, so you can also benefit from this library. I have published all the code used here as a Google colab notebook, so you can easily run it online.

我目前在一个项目上使用TF Agents,并且由于它的良好文档(包括教程) ,因此开始它很容易。 它会定期更新并有很多贡献者,这使我认为我们有可能将TF代理视为在不久的将来实施RL的标准框架。 因此,我决定撰写这篇文章为您提供快速入门,因此您也可以从该库中受益。 我已经在这里发布了所有用作Google colab笔记本的代码 ,因此您可以轻松地在线运行它。

You can find the Github with all the code and documentation for TF-Agents here. You won’t need to clone their repository, but it’s always useful to have the official Github for reference. I have implemented the following example following partially one of their tutorials (1_dqn_tutorial) but I have simplified it further and used it for playing Atari games in this article. Let’s get hands on.

您可以在此处找到有关TF-Agent的所有代码和文档的Github。 您不需要克隆他们的存储库,但是拥有官方的Github作为参考总是有用的。 在部分教程之一(1_dqn_tutorial)之后,我实现了以下示例,但在本文中我进一步简化了该示例并将其用于玩Atari游戏。 让我们开始吧。

As already said, TF-Agents runs on TensorFlow, more specifically TensorFlow 2.2.0. In addition you will need to install the following packages if you don’t have them already:

如前所述,TF-Agents在TensorFlow上运行,更具体地说是在TensorFlow 2.2.0上运行。 此外,如果您还没有以下软件包,则需要安装它们:

We will implement a DQN Agent (Mnih et al. 2015) and use it for CartPole, a classic control problem. If you would like to solve something more exciting like, say, an Atari game, you just need to change the environment name with the one you wish, choosing it from all the available OpenAI environments.

我们将实现DQN代理( Mnih等人,2015年 ),并将其用于经典的控制问题CartPole。 如果您想解决诸如Atari游戏之类的更令人兴奋的事情,则只需用所需的名称更改环境名称,然后从所有可用的OpenAI环境中进行选择即可 。

We start by doing all of the necessary imports. As you can see below, we implement quite a few objects from TF-Agents. These are all things we can customize and switch for our implementation.

我们首先进行所有必要的导入。 如下所示,我们实现了TF-Agents中的许多对象。 这些都是我们可以自定义和切换以实现的所有功能。

jaekookang/ jaekookang / RL-cartpole.] RL-cartpole的 GIF。]

Now, we head on to create our environment. In CartPole, we have a cart with a pole on top of it, the agent’s mission is to learn to keep up the pole, moving the cart left and right. Note that we will use an e environment from suite_gym already included in TF-Agents, which is a slightly customized (and improved for its use with TF-Agents) version of OpenAI Gym environments (if you’re interested, you can check the differences with OpenAI’s implementation here). We will also use a wrapper for our environment called TFPyEnvironment ― which converts the numpy arrays used for state observations, actions and rewards into TensorFlow tensors. When dealing with TensorFlow models, (i.e., neural networks) we use tensors, so by using this wrapper we save some effort we would need to convert these data.

现在,我们继续创建环境。 在CartPole中,我们有一个顶部带有杆子的推车,代理的任务是学习保持杆子,左右移动推车。 请注意,我们将使用已经包含在TF-Agents中的suite_gym中的e环境,该环境是OpenAI Gym环境的略微定制(并与TF-Agents结合使用的版本)(如果您有兴趣,可以检查差异)与OpenAI的实现在此处 )。 我们还将为我们的环境使用一个名为TFPyEnvironment的包装器,该包装器将用于状态观察,操作和奖励的numpy数组转换为TensorFlow张量。 在处理TensorFlow模型(即神经网络)时,我们使用张量,因此通过使用此包装器,我们节省了一些工作,我们需要转换这些数据。

There are different agents in TF-Agents we can use: DQN, REINFORCE, DDPG, TD3, PPO and SAC. We will use DQN as said above. One of the main parameters of the agent is its Q (neural) network, which will be use to calculate the Q-values for the actions in each step. A q_network has two compulsory parameters: input_tensor_spec and action_spec defining the observation shape and the action shape. We can get this from our environment so we will define our q_network as follows:

我们可以使用TF-Agent中的不同代理: DQN , REINFORCE , DDPG , TD3 , PPO和SAC 。 我们将如上所述使用DQN。 代理的主要参数之一是其Q(神经)网络,该网络将用于计算每个步骤中操作的Q值。 q_network具有两个强制性参数:input_tensor_spec和action_spec,用于定义观察形状和动作形状。 我们可以从环境中获得此信息,因此我们将定义q_network,如下所示:

There are many more parameters we can customize for our q_network as you can see here, but for now, we will go with the default ones. The agent also requires an optimiser to find the values for the q_network parameter. Let’s keep it classic and use Adam.

如您在此处看到的,我们还可以为q_network自定义更多参数,但是现在,我们将使用默认参数。 该代理还需要一个优化器来查找q_network参数的值。 让我们保持经典,并使用亚当。

Finally, we define and initialize our agent with the following parameters:

最后,我们使用以下参数定义和初始化代理:

  • The time_step_spec, which we get from our environment and defines how are our time steps defined. time_step_spec,我们从环境中获取并定义了如何定义时间步长。
  • The action_spec, same as for the q_network. action_spec,与q_network相同。
  • The Q network we created before. 我们之前创建的Q网络。
  • The optimizer we have also created before. 我们之前也创建过优化器。
  • The TD error loss function, similar to how the loss is used in NN. TD错误丢失功能,类似于在NN中使用丢失的方式。
  • The train step counter, that is just a rank 0 tensor (a.k.a. scalar) which will count the number of steps we do on the environment. 火车步数计数器,仅是等级0张量(也称为标量),它将计算我们在环境中执行的步数。

We will also need some helper methods. The first one will iterate over the environment for a number of episodes, applying the policy to choose what actions to follow and return the average cumulative reward in these episodes. This will come in handy to evaluate the policy learned by our agent. Below, we also try the method in our environment for 10 episodes.

我们还将需要一些辅助方法。 第一个将在环境中迭代多个情节,应用策略选择要遵循的动作并返回这些情节中的平均累积奖励。 这将有助于评估我们的代理商所学到的政策。 下面,我们还将在环境中尝试10集这种方法。

We will also implement a method to collect data when training our agent. One of the breakthroughs of DQN was experience replay, in which we store the experiences of the a


全球今热点:3天2板海天瑞声:30日累涨超200% 公司未与OpenAI开展合作 ChatGPT产品和服务未带来收入 该领域对数据需求的发展趋势有待观察

今天海天股票,海天股票今天买进多少,海天三季报,海天股市的行情


(资料图片仅供参考)

海天瑞声2月8日公告,公司股票交易连续30个交易日内(2022年12月21日至2023年2月8日)收盘价格涨幅偏离值累计超过200%,属于股票交易严重异常波动情形。公司股票连续2个交易日(2023年2月7日、2023年2月8日)收盘价格涨幅偏离值累计超过30%。截至2023年2月8日,公司收盘价为189.60元/股。根据中证指数有限公司发布的数据,公司最新滚动市盈率为330.17倍,公司所处的行业最近一个月平均滚动市盈率为58.72倍,公司市盈率显著高于行业市盈率水平。公司特别提醒广大投资者,注意投资风险,理性决策、审慎投资。

公司也注意到ChatGPT等AIGC类话题近期在国内、国外产业界引发了大量关注和讨论,公司自身始终秉承冷静、理性、专业的态度看待包括ChatGPT等在内的各类产业界新现象对公司业务所能产生的实质影响,公司认为整个AIGC领域未来将保持长期向上发展趋势,但其发展速度、阶段性效果等需要冷静分析、避免短期盲目过热,公司始终坚信需要回归到行业及公司业务基本面看待各类新现象所能产生的价值。请广大投资者务必注意投资风险,理性决策、审慎投资。

公司专注于为包括AI技术公司在内的AI产业链各类机构提供算法模型开发训练所需的专业数据集,业务与从事人工智能算法及应用开发的企业有比较大的区别。截止本公告披露日,公司未与OpenAI开展合作,其ChatGPT的产品和服务未给公司带来业务收入,该领域对数据需求的发展趋势有待观察。请广大投资者务必注意投资风险,理性决策、审慎投资。

根据已披露的《海天瑞声2022年年度业绩预告》,2022年度,公司预计实现归属于母公司所有者的净利润人民币2,800.00万元至3,000.00万元,与上年同期(法定披露数据)相比,将减少160.54万元至360.54万元,同比下降5.08%至11.41%;公司预计实现归属于母公司所有者的扣除非经常性损益后的净利润人民币900.00万元至1,100.00万元,与上年同期(法定披露数据)相比,将减少1,006.74万元至1,206.74万元,同比下降47.79%至57.28%。

(文章来源:界面新闻)


关于ChatGPT在全球的引爆,AI算法工程师和分析师的看法并不相同

全球chat真的可以赚钱嘛

作者|朱雯卿Judy

编辑|石亚琼

*

无论在哪里,AI对话机器人ChatGPT都在引爆世界。

图源网络

但对于其应用,AI算法工程师的看法和产业分析师们并不相通。

ChatGPT作为一种低门槛、高效的AIGC图文内容生产工具,将在智能呼叫、虚拟人、游戏等领域得到更大的落地应用,也将使众多计算能力、数据标识、自然语言处理等基础技术公司受益。

在产业应用方面,似乎还在观望。 作为一项刚刚出现的新技术,企业的AI算法工程师认为错误率和高成本仍然是阻止其快速落地的最大障碍。

行业分析师看到的是技术对未来的想象,而产业的AI工程师看到的是具体的困难。 技术的长期进步不应该被低估,技术的短期进展也不应该被高估,两者的结合也许是看到ChatGPT商机的更合理的方法。

现在,要想通过ChatGPT真正赚钱,可能需要考虑开源、成本、道德和监管等很多问题。 AI的代表性未来来得很快。 如何改变技术流程和商业模式?

01 ChatGPT有哪些商业化潜力,企业如何乘车? 作为OpenAI月30日刚刚上市的免费机器人交互模型,ChatGPT由GPT-3.5系列中的一个模型微调而成,最多可拥有1750亿个模型参数。 在模型中首次采用了RLHF (来自人类反馈的强化学习)方式,今年初结束了训练。 现在处于测试阶段,发售一周内有100万人以上的用户在使用。

聊天、写代码、写小说、写论文,以ChatGPT为代表的AI聊天机器人似乎已经无能为力,取代了很多人的工作。

我们更关心。 实际使用什么样的场景的可能性很高?

内容创作、客服机器人、虚拟人、机器翻译、游戏、社交、教育、全家福等领域或许是ChatGPT能够快速落地的方向。

浙商证券认为,ChatGPT模型的出现对文字模式的AIGC应用具有重要意义。 但不限于代码机器人、小说派机、会话类搜索引擎、语言伙伴、语音工作助手、会话虚拟化等下游APP应用,都得益于ChatGPT技术的成熟。

图源网络

在智能呼叫领域,ChatGPT有助于客户服务,因为它可以用于创建能够与用户交互的聊天机器人。 ChatGPT还可以微调以回答特定类型的问题,从而有助于创建虚拟助手和其他类型的信息提供系统。

事实上,从新技术问世到落地的应用,需要跨越巨大的鸿沟,行业的真实呼声可能并不那么活跃。

乐言科技智能答疑技术负责人邱杰博士告诉36氪,对于智能客户服务行业来说,目前在ChatGPT上的应用还处于展望和维护阶段。 一方面,电商行业需要基于固定SOP,提供确定性和高准确率的答案,而ChatGPT呈现出的创意无法反过来应用于这一场景,另一方面,目前的高成本和不确定的收益点,需要等待智能客服行业找到更好的落地方向。 邱杰也表示,尽管如此,他在关注ChatGPT相关技术的同时,也会在强化学习、多模式内容等方面不断尝试和应用。

在游戏和社交媒体等虚拟化场景中,可以使用ChatGPT创建与用户交互的虚拟代理和虚拟化身,也可以从输入数据中生成类似人类的文本响应。 这有助于相关APP应用程序的内容创建。

特别是在娱乐创作领域,腾讯、百度、中文在线、阅读集团等公司与AI相关的写作项目――腾讯的写作机器人、百度集团的文心大模型、中文在线的AI文字辅助创作功能、阅读集团由微软ChatGPT给文本生成领域带来新的创作模式。

除了改变创作外,ChatGPT还可能改变获取信息的主要方式。

国盛证券表示,与此前的AI绘制相比,ChatGPT更有可能将AI能力和工作流程相结合。

如果将ChatGPT与Midjourney、Stable Diffusion等创作工具融合,并将其输出结果作为一个中间变量输入到其他模型中,就有可能直接输出设计艺术等。 文字生成是基础,用户所做的就是尽量调整自己的输入,让AI能够输出更高质量的内容,这本身也是一个训练和反馈过程。 一些用户在社交媒体上表现出对ChatGPT的付费订阅意愿,这也为C端用户的需求带来更大的商业化潜力。

编程机器人也是备受关注的应用场景。

海通证券的研究表明,ChatGPT作为一种交互式大规模语言模型,最擅长回答用户提出的问题,其中最重要的是ChatGPT具有编程方面的基础知识。 这样,ChatGPT就可以通过类似Stack Overflow的编程q&; amp; 变成a工具。 但是,回答问题的主体是AI。 据OpenAI官网介绍,对于用户对调试的请求,ChatGPT首先要与用户进行交互,确保在调试过程中关注具体问题并提供正确的代码。

值得注意的是,由于ChatGPT自动生成的答案质量太低,错误太多,Stack Overflow宣布暂时禁止将ChatGPT生成的内容发布到社区。

同时,计算能力、数据标注、自然语言处理( NLP )等上游需求,也将推动相关技术公司的发展。

专门机构预计,到2025年,AIGC将占所有生成数据的10%,还可能产生数万亿美元的经济价值。

随着AIGC技术在世界范围内的崛起,对计算能力的需求将越来越明显。 目前,OpenAI等大型企业为了满足AIGC的要求正在着手自建计算集群,这种集中的培训对GPU、存储、机房、供电等基础设施有很大的需求。 国内部分创业团队目前基于公有云培训,随着需求的增长,有望转向集群自建。

一流科技创始人兼首席执行官袁进辉告诉36氪,ChatGPT背后的一系列技术也意味着很多重建的机会。 计算能力、算法、系统、芯片都可以通过购买获得,但数据还不是有钱就能买到的。

他说,ChatGPT离预训练模型又近了一步,它是一种通过InstructGPT技术为人类在模型训练中提供反馈和指导的强化学习方法,即数据标注人员需要调整模型,基于未标注的数据

因此,云制造商、芯片、计算力公司等,特别是数据标注公司将迎来新的机会。

Web3.0社团也在关注ChatGPT的出现。

以太坊的创始人Vitalik Buterin发表了使用ChatGPT的编码试验的文章。 实验结果表明,ChatGPT在编码过程中会出现错误,但也提出了一些新的编码模式,提高了编码速度,有助于作为编程辅助工具。 他说:“AI正在迅速改善,希望它能继续进一步优化,并随着时间的推移消除这样的错误。 但是,AI不能代替人类程序员。 " "

认为ChatGPT和Web3之间存在多个可能的结合点。

包括学习Web3的基础知识,但仅限于2023年前的资料帮助写一些自动编写基本代码的文章; 使用作为discord、电报等Web3社区的聊天机器人使用的ChatGPT生成AI制图所需的prompt关键词,用于AI绘画; 访问Web3游戏,用于NPC对话系统等。

一些人利用ChatGPT进行了从理论到编码的Web3实践测试。

他们改变了提案-投票的DAO治理机制,提供了ChatGPT基于自然语言创建、自动创建和链接智能合约的自动化功能。 测试者表示:“ChatGPT将帮助原创深度内容的创造者进入职业生涯的新阶段。 ChatGPT和Web3的组合是内容创作者和产品开发者的黄金时代。 " "

所有卓越技术的出现,都是洗牌的机会。 抓住机遇“乘车”是绝大多数企业的必由之选。

一流科技创始人兼首席执行官袁进辉认为,以ChatGPT为技术基础设施,再加上自身行业数据进行培训,将成为一种实践方向。

APP方面的企业也有类似的感觉。 硅基智能的创始人司马华鹏CEO告诉36氪,ChatGPT将是一种技术生态,但它无法学习网上公域的知识,解决具体行业企业的个性问题。 因此,越来越多的创业公司应该基于AI技术,提出更接近客户具体需求和痛点的解决方案和产品。

例如,作为虚拟人公司,对于医疗、银行等行业的企业,可以分别形成解决方案,通过ChatGPT等AI技术加入相应的私有化知识进行模型培训,解决实际问题。

02离赚钱还有多久? 要真正实现收益,在成本、技术、道德等方面,ChatGPT还有很多值得关注的问题。

首先,在规模化之前,必须面对培训成本持续上升的问题。

根据ChatGPT,每次对话的平均费用为0.01-0.2美元。 创始人Sam Altman说:“我们在某个时候必须以某种方式货币化,计算成本太大了。 " "

OpenAI虽然重视商业化APP,但背对着并不急于创收的微软,也并不是缺钱。 这次的ChatGPT免费无限制地向公众开放,但此前GPT-3是按照使用量( token )收费的,已经有了很多客户。

在使用中,用户可以提供反馈。 这些反馈交流是OpenAI最有价值的信息,也是促进进步的重要一环。 这种免费利用方式可以在低成本大量获得真实样品的同时,扩大ChatGPT的影响力。 袁进辉同样认为,成本在技术突破面前只是时间问题。

除了成本外,ChatGPT还有技术上的局限性。

与GPT-3相比,ChatGPT在模型表达方面取得了突破,但目前仍可能需要进一步的调试和培训才能满足商业使用标准。

很多用户反应过来,ChatGPT偶尔会犯错误,过度推测对提供的信息有一定误解的人的喜好。

另一个致命的缺点是无法通过互联网实时搜索信息。

出门问问的创始人兼CEO李志飞在朋友圈表示:“对于语音助手和搜索引擎,ChatGPT目前做得并不好。 1 .最重要的是,不要查附近的川菜馆。 2 .不要帮手机本地操作打电话、定日历、写歌3 .很有可能无法回答培训中没有看到的最新网页知识。 例如,5年前活跃但今天不活跃的政治家的今年年龄未必能准确回答4 .不能做简单的逻辑问题和加减乘除问题的概率很高。 总之,ChatGPT的《认知》建立在虚拟训练文本上,没有与实时数据库和信息连接,没有语义理解所需的指导,也没有显式的逻辑推理,还是有点空中楼阁的味道。 当然,这些问题可以通过hack解决,但会失去GPT的优雅、简单和通用性。 那和《传统》的方法差不多。 当然,ChatGPT表现出的能力是惊人的,也是伟大的。 只是,和所有新技术hype一样,并不像想象的那么惊人。 路很长,AI还得继续探索。 " "

由于其学习知识仅限于2023年前的网络离线文本,很多最新问题无法解答。 对于中文用户来说,由于词汇量不足,中文会话能力也比英语差一些。

但是,MIT Technology Review对OpenAI科学家的采访中表示,有可能将ChatGPT和WebGPT的能力联系起来。 ChatGPT WebGPT可以实时更新信息,对事实真伪的判断更加准确。 ChatGPT具有较强的工程化、迭代反馈能力,作为AI可以与人类目标统一。

模型训练的数据源也是一个大问题。

像ChatGPT这样的大规模预训练模式,需要利用人工智能对互联网上海量的语言、文本数据进行信息挖掘,以理解内容。 但在当前复杂的信息场景下,数据质量参差不齐,使得语言模型的训练和学习变得更加困难。

ChatGPT能够带来各种新的技术需求,为训练大型模型提供软件算法支持(如一流的科学技术)的底层架构公司也有新的机会。

AI的发展总是伴随着尚未解决的科技伦理问题。

OpenAI背靠微软,采用传统的API方式,中心管理AI的伦理道德、版权等安全问题。

Dall-E2的使用合同中规定,该图像的著作权属于OpenAI; 另外,该训练模型的数据也关闭了,无法看到。

但是,聊天机器人和文本生成工具等很可能会学习互联网上所有的文本,无论质量如何,都会产生错误、恶意、冒犯甚至攻击性的语言输出。 OpenAI结合用户的反馈,这几天一直在探索绕过大家实验的系统限制,屏蔽生成负面信息的方法,避免社会偏见、错误信息、有害信息等。

袁进辉表示,目前存在这些问题很正常,长期看时间,随着投入一定会得到解决。 与目前的投资相比,诞生于ChatGPT未来的商业APP价值必然会被解决。

在开源问题上,业界并不认为OpenAI会将ChatGPT模型开源,就像GPT-3也不是开源的一样。 但袁进辉认为,1年时间左右,市场巨头加入竞争,社区出现开源版本,逐渐成为AI基础设施。

03放眼望去,会发生什么样的变化? “我上学以来开始研究AI已经20年了。 所以,无论大侠对AI多么有热情,自己都不认为AI没有神秘性,会创造奇迹。 但是,最近AIGC和OpenAI ChatGPT非常吃惊。 正如确实所说的那样,大模型和BERT都是transformer,但不是另一个物种。 “这是一流科技首席执行官袁进辉对ChatGPT的出现的直观感受。

在寻找答案和解决问题的效率方面,ChatGPT部分地超越了当前的搜索引擎。 很多人担心我们的新一代搜索引擎可能不再是谷歌了。

业内人士认为,用ChatGPT代替谷歌其实还很远。

模型可以提高搜索的准确性和交互性,但其成本相对较高,免费试用期后,从性价比的角度看,ChatGPT在短时间内难度较大,取代谷歌。 但它可以补充目前的搜索引擎服务,也将对现有的搜索引擎公司产生一定的冲击,促进各大公司之间的竞争。

另一方面,ChatGPT仍然提供虚假信息,不能很好地解决过度猜测用户意图的问题,因此偏向于AIGC内容生产工具,而不是搜索引擎等寻找信息集合和答案的工具。

ChatGPT在业界被认为是AIGC的划时代里程碑。

最近流行的aigc APP应用程序包括MidJourney、Stable Diffusion、Jasper等文章的自动生成、图像的文字生成等平台。 AI内容制作工具沿着“文字-图像-音频-视频”的数字媒体演进的路径爆发性地出现。

另外,信通院的《人工智能生成内容(AIGC)白皮书(2023年)》表示,近年来超深度学习的发展也带来了深度神经网络技术在大规模模型和多模式两个方向上的突破,支撑了AIGC的进化,可以生成更丰富生动的数字内容

OpenAI首席执行官SamAltman表示,我们可以通过ChatGPT与计算机进行交互,获得想要的东西,从而使软件从指令驱动转向了意图驱动。 ChatGPT作为语言接口,是我们实现神经接口前的最佳方案。

而且,由于ChatGPT将人类对结果的反馈作为其学习过程的一部分,所以每一步都会观察人类的反馈,朝着人类所希望的方向发展。 因此,ChatGPT所代表的AI技术有可能扩展到人类情感等更多领域。

司马鹏告诉36氪,如果未来AI能与用户发生情感交流,游戏、电子商务、搜索、社交等商业领域将发生非常大的革命。 特别是对于硅基智能在做的数字虚拟人来说,如果能连接到ChatGPT这样的引擎,目前虚拟人的短视频和直播等内容将呈现出全新的面貌。 嘀嘀打车这样的内容平台,AI生产的内容将是无限的,因此传统的生产模式将被打破。

除了具体的应用场景外,以ChatGPT为代表的国际AIGC平台很可能成为未来新的AI基础设施,同时也在向更垂直、更专业的方向发展。

上次给世界带来这么大冲击的AI还是打败李世石的Alpha GO,转眼间新的革命又摆在眼前。 OpenAI的CEO Sam Altman在推特上写道:“trusttheexponential.flatlookingbackwards,vertical looking forwards .”

ChatGPT可能让我们站在某个起飞点。