- 博客(49)
- 收藏
- 关注
原创 langchain中内置智能体的核心代码实现和提示词
LangChain的智能体框架提供了灵活、强大的工具来构建基于大语言模型的智能体系统。其核心是思考-行动-观察循环(ReAct范式),使模型能够通过推理和使用工具来解决复杂任务。AgentType- 定义不同类型的智能体,如ReAct、对话式智能体等- 管理智能体的执行流程,包括工具调用、处理中间步骤等工具集成- 允许智能体使用各种工具来扩展其能力提示词工程- 为不同智能体类型定制专门的提示词模板这些组件共同构成了一个强大的框架,使开发人员能够构建能够推理、规划和执行的复杂AI应用。
2025-04-09 10:02:03
820
原创 Agent的6中设计模式
智能体模式核心特点适用场景优势局限性反射式智能体基于规则直接反应简单、确定性环境高效、低延迟无法处理复杂场景基于目标智能体规划达成明确目标结构化任务有方向性、可处理多步骤需要明确目标定义基于效用智能体最大化效用函数多目标或不确定环境灵活、可权衡效用函数设计复杂多智能体系统协作分工解决问题复杂大型任务可扩展、鲁棒性强协调开销大自主学习智能体从经验中持续改进动态变化环境适应性强、持续进步初期表现可能较差混合智能体架构多种模式结合使用复杂多变环境。
2025-04-08 14:06:33
828
原创 大模型的6种设计模式
设计模式核心优势典型应用场景链式思考提高推理准确性数学问题、逻辑推理ReAct结合思考与行动需要查询外部工具的任务自洽性提高答案可靠性需要高准确度的关键决策代理模式自主决策与执行复杂多步骤任务自动化RAG增强知识与时效性需要专业或最新知识的问答提示工程控制输出质量和格式结构化内容生成、专业场景这些设计模式可以单独使用,也可以组合使用以解决更复杂的问题。选择合适的模式取决于具体任务需求、资源限制和期望的结果质量。随着大模型技术的不断发展,这些设计模式也将持续演进和完善。
2025-04-08 11:44:33
930
原创 Unity发布微信小程序-实战问题汇总
就很难受,因为对于unity导出的小程序来说,我们希望导出的同一套代码或者说上传后的一个版本测试通过后,可以发布,现在如果话,测试出一个包,通过之后,在出一个正式环境的包,但是这两个包理论是不一样的(同一份代码(一点点改动,比如该cdn地址),两次导出是不一样,我遇到过,第二次导出直接启动不了的,又导出一次才可以),所以对于unity开发的版本就很难受。我希望的是测试通过版本直接提交,所以之前用了版本状态来做区分,奈何审核的时候他们不做人,我看23年就有留言反馈,官方回复解决了,其实都没解决。
2024-10-31 11:11:50
938
原创 UI-无限循环列表
ViewPort:视口大小SrollDirction:滚动方向MovementType:移动类型(滚动的速度曲线)Elasticity:弹性系数SrollSensitivity:滚动系数,越大移动的越多。为1时表示等比移动。Interia:是否开启惯性DecelerationRate:开启惯性后的减速度Snap–Enable:是否开启自动定位,开启后会将滚动结束后距离中心最近的元素定位到中心。Snap–VelocityThreshold:速度值。
2024-08-13 18:31:32
505
原创 Unity 打包的安卓APK在模拟器运行一会卡死
如题,unity在模拟器上运行安卓apk挂机一会就卡死,在真机上没问题。因为打包时勾选了这个帧率优化选项,2019.2之后的功能,最坑的时打包时默认勾选,所以使用这个版本打包时,模拟器一会就爆炸了。我目前使用的版本是2021.3。
2024-07-10 18:37:40
600
原创 SourceTree操作
2.打开history页签,设置为所有分支和显示远程分支,选中需要回滚到的分支记录,右键==》重置当前分支到此次提交==》强行合并。3.选中最新的提交,右键==》重置当前分支到此次提交==》软合并。1.选中需要回滚的分支,更新到最新。
2023-04-23 12:12:15
152
原创 让人气死的bug
这个稳定版本的粒子系统有个bug,粒子系统中,如果粒子par使用了Shape功能,并且shapeType为Mesh,假设使用a.mesh文件,此时另一个模型b_model也是用a.mesh文件。那么设置为的a.mesh如果没有开启读写,则在手机包中使用AssetBundle模式加载了par和b_model,这是b_model的mesh文件是丢失的,如果使用editor加载assetbundle是可以看到b_model的mesh文件,但是如果双击mesh文件,恭喜你,unity就会崩溃。
2023-04-20 20:51:38
177
原创 Unity Animation锁定的属性无法修改数值
Unity的Aniamtor使用后,里面绑定的属性就会被强制锁定,导致业务层无法做修改。属实有点难受,这篇文章就来分析下,对于锁定的属性,animator是如何处理的。
2022-08-18 15:19:29
3706
原创 编写PostEffect后期的shader
如果之前在OnRenderImage写后期,经常会用cg去写后期。但是代码放到PostEffect中发现,就只有一个莫名其妙的三角。是因为,PostEffect中的uv计算,和pos计算与我们平时使用的方式不同。还有关于_MainTex的使用。...
2022-07-15 19:19:04
182
原创 c# 自定义List排序
自定义List排序sort返回排序的几种实现方式List.Sort(Comparison comparison)List.Sort(IComparer Comparer)刚使用sort排序又又又又又忘了,返回1(大于0即可),-1(小于0即可)是怎么排序了,果然是年纪大了。sort返回 void Start() { List<int> tempList = new List<int>() {2,3,9,3,4 }; tempList.So
2022-01-29 15:04:07
1587
原创 Unity Rect和Bounds源码
Rectpublic struct Rect : IEquatable<Rect>{ [NativeName("x")] private float m_XMin; [NativeName("y")] private float m_YMin; [NativeName("width")] private float m_Width; [NativeName("height")] private float m_Height; public static Rect
2021-06-28 17:38:17
848
5
原创 Unity自定义阴影-获取光源处深度图
获取光源处深度图前言将光源处深度图转化为可采样格式Shader中使用前言如果我们要自定义阴影,通过之前的文章,我们知道我们需要知道光源处的深度图和物体在光源处的深度,然后进行对比。然而在项目中,假如我们使用了unity阴影,则说明已经有了这张深度图。如果我们重新在渲染一个光源处的深度图,就会使多出一倍的渲染消耗。如果我们能拿到已经有的那个深度图问题就轻松多了。将光源处深度图转化为可采样格式通过CommandBuffer转换shadowmap的采样格式:CommandBuffer.SetShado
2021-06-23 20:50:01
752
原创 Unity 手机端光照贴图切换全坑实录(变暗,错乱,数量增加)整理
光照贴图更换的坑过程复现为什么修改LightmapSettings.lightmaps的某个数据无法完成光照贴图的替换切换光照贴图后,再次切换场景,之后场景变暗解决方案1-修改源码解决方案2-将Main场景进行烘焙光照贴图数量变长问题解决方案-卸载场景时手动设置光图总结过程复现故事背景:版本2018(应该都是有这个问题),线性空间故事过程:1.首先一开始的时候我们有一个主场景Main,2.然后使用Additive方式加载场景A(这里也可以加载多个场景,结果是一样的),3.将A设置为主场景4.对
2021-06-19 20:40:57
3889
2
原创 Unity 光照贴图切换失效的问题2018
我们使用LightmapSettings.lightmaps设置场景中的光照贴图的信息。LightmapSetting的结构如下:[NativeHeader("Runtime/Graphics/LightmapSettings.h")][StaticAccessor("GetLightmapSettings()")]public sealed class LightmapSettings : Object{ //光照贴图 public static LightmapData[] lig
2021-06-07 21:02:57
1528
2
原创 Unity Inspector用脚本修改不触发保存~~2018.3
问题最近有两个朋友都问了我这个问题,在Editor脚本中,获取target修改里面的数据,没法保存,SetDirty()根本无效,只能通过改改别的地方能保存时候,保存一下。大概代码如下://--运行时脚本,里面有AAA属性using UnityEngine;public class ShadowMapTest : MonoBehaviour{ public int AAA;}//--编辑器脚本using UnityEditor;using UnityEngine;[CustomE
2021-05-29 17:38:47
1765
1
原创 复制AnimationCurve曲线
AnimationCurve在Unity中和进行复制?保存为模板的方法如果项目中需要使用曲线的方式比较多时,有可能有些曲线只是临时性的,我们也要这要操作,便捷性不高,对于曲线模板的可以这样使用。使用PropertyDrawerusing UnityEngine;using UnityEditor;namespace YU.Art{ [CustomPropertyDrawer(typeof(AnimationCurve))] public class AnimationCur
2021-05-26 14:43:15
814
原创 Unity AnimationClip企业级理解
AnimationClip前言AnimationClip作用组成和控制原理AnimationClip和AniamtionCurve关系使用分析多组件的获取问题Avatar、Humanoid、Motion和AnimationClip的关系Humanoid的动画导入问题Motion动画的设置Generic和Humanoid的applyRootMotion的区别Genreic类型的RootMotionHumanoid类型的RootMotion我的疑问经典API-SampleAnimation(GameObject
2021-05-20 12:18:44
2059
原创 Unity EditorWindow、链表显示、滚动显示
创建Editorwindow创建EditorWindow链表显示-reorderableList滚动显示效果演示代码展示创建EditorWindow1.自定义一个window需要继承EditorWindow。2.创建此window的实例,通过此API创建。EditorWindow.GetWindow(typeof(ClipInfoEditorWindow))3.调用window.show()方法进行显示链表显示-reorderableList1.创建,构造函数,可选功能:1.是否可以拖拽
2021-05-13 17:12:18
3193
1
转载 Visual Studio使用Code Snippet快捷创建代码
这位整理的挺好的~https://zhuanlan.zhihu.com/p/84373686?ivk_sa=1024320u
2021-05-08 17:24:04
254
原创 Transform--理解性剖析(四元数,轴角,欧拉角,向量的几何意义)
Transform前言PositionRotation欧拉角Unity中的旋转四元数轴角定义前言Unity开发的都知道transform这个组件,可以说是unity的核心数据了。记录数据位置,旋转,缩放。乍一听好像结束了。其实仔细想想还是有很多嚼头的。PositionUnity中的位置都是相对位置,都是相对于父节点的位置,对于没有父节点的物体,就是相对于一个(0,0,0)点位置,我们称之为世界坐标的0点。我们经常使用的坐标一个是局部坐标,一个是世界坐标。其实世界坐标是一个特殊的局部坐标,我们为了有一
2021-05-07 15:41:37
2156
原创 Unity之TimeLine自定义-代码示例
代码示例前言CinemachineTrackCinemachineMixerCinemachineShot(ClipAsset)CinemachineShotPlayable(ClipPlayable)PlayableDirector(控制TimeLine使用)结束语前言这里将Cinemachine的Timeline相关的代码复制出来,为扩展提供一些模板,原理还请参看之前的Timeline自定义CinemachineTrackusing System;using UnityEngine;usin
2021-04-30 11:46:06
916
原创 Unity之TimeLine自定义
自定义TimeLine前言四大天王unity中样子类关系结构天王的关键函数TrackClipAssetMixerClipPlayable运行时Graph图结构ClipCapsPlayableDirector界面介绍常用函数结束语前言playableAPI推出后,一直没有起色,记得当初Unity大会上,说是为了解放unity的动画系统,因为其操作之复杂枯燥,本应该美术同学的工作要强加给技术,所以当时果断放弃了。但是TimeLine的崛起,又回到我的面前。四大天王unity中样子上面我们能看到的只要
2021-04-29 18:32:46
2737
1
原创 Unity 协程
协程前言调用方式停止方式yiled return语句执行时机WaitForSeconds(float Time)WaitForSecondsRealtime(float time)WaitForEndOfFrame()WaitForFixedUpdate()WaitUntil(Func predicate)WaitWhile(Func predicate)实现自定义函数实际开发中使用建议前言协程是unity提供的一个特殊的机制,他的特点就是可以方便的实现流程化的东西。但是就他的效率而言个人感觉并不乐观,
2021-04-15 18:03:46
920
原创 Unity Gamma空间和Linear空间转换代码
Gamma与Linear转换Cg版本个人理解Gamma空间当初的疑惑线性空间结束语Cg版本引自: UnityCG.cginc//--Gamma到Linear转换inline half3 GammaToLinearSpace (half3 sRGB){ // Approximate version from http://chilliant.blogspot.com.au/2012/08/srgb-approximations-for-hlsl.html?m=1 return sRG
2021-01-26 15:45:51
3186
原创 Unity Shader Color、HSV、HDRColor以及HDRColor面板转换源码分析
Shader ColorRGB颜色HSV颜色简介RGB与HSV的转换RGB TO HSVHSV TO RGBHDRRGB颜色这个就是祖传手艺了,RGB三原色,不多说。他的应该是这样的,没错一个正方体HSV颜色简介作为一个程序员,对于 颜色的理解就是RGBA,但是当我们跟美术大大进行沟通时,他们老是给整什么饱和度,色相之类的外星话。我们给他说你通过调节RGB的值做效果,大眼瞪小眼了。其实对于美术而言他们更熟悉的HSV(也叫HSB)模型:H 为 色相(hue):取值范围0-360, 在0~360°的
2021-01-23 18:21:44
6186
4
原创 Unity Editor 随手笔记-创建系列
Editor的动态创建简介ScriptableObject、SerializedObject、Editor、SerializedProperty简介最近搞了几天的编辑器的工具,发现不怎么用的API总是忘记。在此做一个记录。ScriptableObject、SerializedObject、Editor、SerializedProperty1.我们知道当我们使用 AssetDatabase.CreateAsset(UnityEngine.Object asset, string path)创建Scr
2020-12-22 11:48:14
556
转载 CG函数源码汇总-->Cg 3.1 Toolkit Documentation
CG函数汇总absacosallanyasinatanatan2bitCountbitfieldExtractbitfieldInsertbitfieldReverseceilclipclampcoscoshcrossddxddydegreesdeterminantdistancedotexpexp2faceforwardfindLSBfindMSBfloatToIntBitsfloatToRawIntBitsfloorfmodfracfrexpfwidthintBitsToFloatinverseisfi
2020-11-17 11:50:48
789
1
原创 Unity官方中文网站
中国地区下载unity的版本地址: https://unity.cn/releases/ltsunity中文文档:https://docs.unity.cn/cn/current/Manual/index.htmlunity中国官方学习网址:https://learn.unity.com/search
2020-11-05 12:10:54
9420
原创 Unity Shader 杂记--那些令人窒息的算法--持续更新
屏住呼吸--小心死亡噪音获取边缘噪音获取边缘如图所示,我们通过一张噪声图来实现这种溶解的效果,可以对于溶解边缘的获取,也就是图中2的区域,使用怎样的计算方式获取呢?记得一开始做这当溶解的时候,是做了两次阀值判断,假设噪声图的a为x,则当x<0.2时为图中1,当x<0.3且x>0.2时为图中2,当x>0.3时为图3,确实当时就是用if语句判断的,在大佬面前这个写法会被鄙视,所以今天分享一下两一种没有if判断的方式: //---假设遮罩图的a通道的值为Mask,过度控制的阀值为T
2020-08-04 20:55:02
502
原创 UnityShader崩坏渲染解析系列(2)--明暗计算
身体渲染什么是明暗处理明暗崩坏处理资源解析什么是明暗与实时渲染不一样的地方在于,日式卡通渲染阴影过度有明显的分界线。没错,左边的明暗变化有一条很明显的交界线,而右边的是有过渡效果的。日式卡通基本采用左边的方式。可能会有人会说好丑啊,确实因为日式的漫画的明暗变化都是由艺术家完成的,可以说是漫画不可或缺的灵魂,而作为程序员只能按照一定的规律生成阴影,我们按照入射角、视角、法线的关系生成对应的明暗面,肯定 无法满足艺术家的需求,他们肯定会说哦,nonono…你们这里这里不能这样这样,那里那里要那样那样。
2020-07-29 16:23:59
1064
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人