AI agent学习之一基础知识

作者:风之清扬日期:2026/8/11

AI agent学习之一基础知识

    • 一、基础知识
      • 案例1:获取 GitHub 用户粉丝数
        • 案例2:YAML文件的读写
        • 案例3:Git操作(git clone、commit和push)
          • 1)git clone
            * 2)先将修改文件暂存
            * 3)提交
            * 4)推送
            * 5)转换分支(checkout)
        • 案例4:文件操作
          • Linux端:
            * Windows端:
        • 案例5:API auth验证带token和不带token区别

AI agent的使用已经成为一个趋势,尽早入行才是王道。面对海量资料,如何入门确实是一个选择性难点。最近刷到网上的一份资料awesome-agentic-ai-zh,包含了两种成长路径,用agent和造agent。比较符合个人需求,以下将对文档学习内容进行梳理总结,一方面加强个人理解。另一方面也是希望能够帮助后来者。

一、基础知识

在入门 AI Agent 之前,需要掌握或回顾以下几个核心知识点:

  1. Python 基础:包括基本的 Python 语法、发起 HTTP 请求、解析 JSON 数据、以及 YAML 配置文件的读取与写入。
  2. 命令行操作:熟悉常用命令,能够在终端中执行基本操作。
  3. Git 基础:了解 Git 的基本使用,如克隆、提交、推送等。
  4. API 认证:理解并实践如何使用 Token 等凭证进行 API 身份验证。

温馨提示:如果你没有 Python 基础,可以在 B 站或菜鸟教程等平台找一个入门教程学习。请注意,Python 版本需要大于 3.9,否则后续安装某些依赖库时可能会遇到兼容性问题。

案例1:获取 GitHub 用户粉丝数

本案例演示如何使用 Python 的 requests 库访问 GitHub API,获取指定用户的粉丝数量。

目标:访问 https://api.github.com/users/torvalds,解析返回的 JSON 数据,并打印其中的 followers 字段值。

代码实现:

1import requests
2
3# 发送 GET 请求到 GitHub API
4r = requests.get("https://api.github.com/users/torvalds")
5
6# 检查请求是否成功
7if r is not None and r.status_code == 200:
8    # 解析 JSON 响应
9    resp = r.json()
10    # 安全获取 followers 字段,若不存在则默认为 0
11    count = 0 if 'followers' not in resp else resp['followers']
12    # 打印结果
13    print('followers : {}'.format(count))
14

运行结果:

1followers : 315597
2

要点说明:

  • 使用 requests.get() 发起 HTTP GET 请求。
  • 通过 r.status_code 判断请求是否成功(状态码 200 表示成功)。
  • 使用 r.json() 将响应内容解析为 Python 字典。
  • 在访问字典键值时,建议先判断键是否存在,以避免 KeyError 异常。

案例2:YAML文件的读写

新建一个config.yaml文件,内容为:

对配置文件进行加载、打印,并修改port写回配置文件。

1import yaml
2
3with open('config.yaml', 'r', encoding='utf-8') as f:
4    config = yaml.safe_load(f)
5    print(config)
6
7with open('config.yaml', 'w', encoding='utf-8') as f1:
8    config['db']['port'] = 33068
9    yaml.safe_dump(config, f1, allow_unicode=True)
10

案例3:Git操作(git clone、commit和push)

首先需要安装git,如未安装,请在菜鸟教程或者B站上搜索相关教程。

1)git clone
1git clone -b dev https://gitee.com/xxx/my-repo.git
2

-b dev:代表dev分支,后缀.git就是项目地址。

2)先将修改文件暂存
1git add .
2

如果指定文件则需要将.改成指定文件名(git add a.txt)。

3)提交

将暂存区内容提交,-m后跟着的是备注。

1git commit -m "Stage0测试提交"
2

注:这里的提交只是到自己本地仓库,如果需要到远程仓库,还需要git push。

4)推送

git push远程推送,如果远程的分支还不存在,需要执行git push -u origin dev。

1git push
2

5)转换分支(checkout)
  • git checkout -b test:创建并转换到test分支,分支必须不存在。
  • git checkout dev:转换到dev分支。


案例4:文件操作

创建文件,简单介绍创建文件/文件夹、写入及删除。

Linux端:
1# 创建新文件夹
2mkdir new_dir
3
4# 创建文件
5touch a.txt
6
7# 写入
8echo "hello" >> a.txt
9
10# 删除文件/文件夹
11rm a.txt
12rm -rf new_dir
13
Windows端:
1# 创建文件夹
2New-Item -ItemType Directory new_path
3
4# 创建文件
5New-Item -ItemType File -Path new_path/a.txt
6
7# 写入
8"新内容" >> .\new_path\a.txt
9
10# 删除(文件/文件夹)
11rm .\new_path\a.txt
12Remove-Item .\new_path\ -Recurse # 空文件夹不需要递归参数
13

案例5:API auth验证带token和不带token区别

在GitHub上生成一个token:

注:生成的token只能看见一次,请保存下来使用。

1import requests
2
3url = "https://api.github.com/user"
4resps = requests.get(url)
5
6token = "ghp_xxxx"
7headers = {
8    "Authorization": "Bearer {}".format(token)
9}
10resps2 = requests.get(url, headers=headers)
11
12print(resps)
13print(resps2)
14

Bearer是OAuth2规范,国际通用标准。带token和不带token返回码不一样。

练完上述五个题目,基本上第一关就算过了。上述案例值得一练,全部通关估计1-3个小时。有基础者可略过。

下一节:LLM基础API调用

参考文献
[1]: https://wenyuchiou.github.io/awesome-agentic-ai-zh/zh-Hans/stages/01-llm-basics/#frontier3
[2]: https://wenyuchiou.github.io/awesome-agentic-ai-zh/zh-Hans/stages/00-foundations/


《AI agent学习之一基础知识》 是转载文章,点击查看原文。


相关推荐


Vue项目创建与入口配置全攻略
En^_^Joy2026/8/2

文章目录 一、vue项目创建二、入口界面配置 一、vue项目创建 创建项目:npm create vue@latest 执行后输入项目名(VueDemo),包名称(VueDemo),是否使用typeScript语法 E:\CODE\vueDemo>npm create vue@latest // 执行的指令 Need to install the following packages: create-vue@3.22.4 Ok to proceed? (y


C++ async 异步学习
小侯不躺平.2026/7/25

创建异步任务、延迟任务。任务或操作可以独立于主线程运行,主线程无需等待任务完成便可执行其他的任务,当异步的任务完成的时候可以通过某种机制获取其结果(std::future) 1、异步任务--async 正常使用环境 future.get #include<iostream> #include<thread> #include<chrono> #include<future> int task(int number) { // 抛出异常 或 返回正常结果 std::cout<


Spark 源码 | SparkSubmitArguments 参数解析(三)
董可伦2026/7/17

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站:https://www.captainai.net/dongkelun 前言 在第二篇文章 Spark 源码 | SparkSubmit 提交流程分析(二) 中,我们分析了 SparkSubmit 的提交流程,其中 doSubmit 方法会调用 parseArguments 解析命令行参数。本文详细介绍参数解析的过程。 版本 Spark 3.2.3 SparkSubmitArguments


LeetCode 459. 重复的子字符串
Best_Jerry2026/7/9

leetcode.cn/problems/re… programmercarl.com/0459.%E9%87… 给定一个非空的字符串 s ,检查是否可以通过由它的一个子串重复多次构成。   示例 1: 输入: s = "abab" 输出: true 解释: 可由子串 "ab" 重复两次构成。 示例 2: 输入: s = "aba" 输出: false 示例 3: 输入: s = "abcabcabcabc" 输出: true 解释: 可由子串 "abc" 重复四次构成。 (或子串 "abc


HDFS javaAPI-windows的IDEA中java文件在linux中的hadoop平台运行
chde2Wang2026/7/1

目录 运行前提 一、在IDEA的Maven项目中创建MkDirDemo类 (1)先确认目录结构(Maven 标准目录,必须按这个来) (2)hdfs java操作代码输入 (3)验证pom.xml文件中hadoop依赖是否和linux中hadoop版本一致 (4)确认 HDFS RPC 地址(关键) 二、Windows 本地配置 Hadoop 运行环境(必做,否则报 winutils 缺失) (1)下载 Windows 适配 hadoop 二进制包Hadoop3.x 下载对应


Obsidian - 使用 Share Note 分享笔记并自部署
LinXunFeng2026/6/22

欢迎关注微信公众号:FSA全栈行动 👋 一、前言 最近在整理 Obsidian 笔记时,经常会遇到一个小需求:想把某一篇笔记快速分享给别人,但又不想为了它单独搭建博客、导出 PDF 或复制到其它平台。 如果只是分享纯文本,复制粘贴当然可以。但 Obsidian 笔记里往往会有这些内容: 图片附件 代码块 Callout 提示块 标签、任务列表 Dataview 查询结果 当前主题样式和自定义 CSS 笔记之间的内部链接 这时候手动搬运就有点麻烦了,格式容易丢,图片也要重新处理。这里介绍一


RabbitMQ 从入门到精通:Spring Boot 实战三部曲(一)—— 基础核心与快速上手
绝知此事2026/6/14

RabbitMQ 从入门到精通:Spring Boot 实战三部曲(一)—— 基础核心与快速上手 专题导读:本系列共三篇,从基础到高级,带你系统掌握 RabbitMQ 在 Spring Boot 项目中的实战应用。 第一篇:基础核心与快速上手(本文)第二篇:进阶特性与可靠性保障第三篇:高级应用与性能优化 📖 前言 在当今的分布式系统中,消息队列已成为不可或缺的基础设施。RabbitMQ 作为最流行的消息中间件之一,以其可靠性、灵活性和易用性著称。 本文将从 RabbitMQ 的基础概念出


iOS、Android、Flutter 2026 流行框架对比
王若风2026/6/7

参考文章:iOS、Android、Flutter 流行框架对比(原始链接) 我把我 2 年前的一篇博客文章进行了一次“重写”,于是有了这篇。 原文的选题很实用,结构也很清晰:按布局、网络请求、图片加载三个维度,把 iOS、Android、Flutter 常见框架放在一起横向看。 帮助移动端开发洞察各端核心框架的流行趋势,提供洞察和选项参考。 但原文的数据,放到 2026 年 6 月再看,已经有点过期了。 比如 Jetpack Compose 已经不是“新趋势”,而是 Android 新项目的


数据采集卡技术全解:从硬件架构到行业应用
zlinear数据采集卡2026/5/31

目录 数据采集卡技术全解:从硬件架构到行业应用 一、数据采集卡基础概念与分类体系 1.1 核心概念:连接物理世界与数字世界的桥梁 1.2 数据采集卡的核心功能构成 1.3 与传统测量仪器的本质区别 1.4 多维度的分类体系 1.4.1 按核心性能(采样率)分类 1.4.2 按总线接口类型分类 1.4.3 按功能与应用分类 章节小结 二、硬件架构深度解析 2.1 整体架构视图:从信号入口到数据出口 2.2 模拟前端:信号的“守门人”与“化妆师” 2.3 数据转换核心:A


技术选型决策树:什么团队、什么项目该选什么框架 | 跨平台框架深度对决(4)
陆业聪2026/5/10

跨平台框架深度对决系列 · 第4/4篇(完结篇) Flutter vs KMP vs KuiKly vs RN,谁是2026年的最优解 第1篇:跨平台框架全景图——Flutter/KMP/KuiKly/RN的2026年格局 第2篇:渲染引擎与性能拆解——自绘vs原生渲染vs Bridge的终极对决 第3篇:架构哲学与工程化——从开发体验到CI/CD的全维度对比 第4篇:技术选型决策树——什么团队、什么项目该选什么框架(本篇 · 完结) 上个月,有三个不同的朋友分别找我聊跨平台选型。 第一个是创业

首页编辑器站点地图

本站内容在 CC BY-SA 4.0 协议下发布

Copyright © 2026 聚合阅读