如图,网页端的模型思考等级描述变成Instant,Medium和High了,是会有什么大动作么 3 个帖子 - 3 位参与者 阅读完整话题
试了下,使用 AI 建了个 CMS ,跟风云服务器推广 SEO 关键字 才做 6 个月,目前每月收到有 500 、1200 、2500 ,3500 不等看运气 月月都有收入 vps 成本,每月 3 刀 :)
试了下,使用 AI 建了个 CMS ,跟风云服务器推广 SEO 关键字 才做 6 个月,目前每月收到有 500 、1200 、2500 ,3500 不等看运气 月月都有收入 vps 成本,每月 3 刀 :)
我记得好像是哈雷佬,但是翻完帖子,加上论坛搜索就是找不到,尴尬了 3 个帖子 - 3 位参与者 阅读完整话题
抽象类 当父类的一些方法无法给出具体实现时,可以用abstract关键字来修饰该方法,不写方法体,把方法变成抽象方法,同时这个类也必须被修改为抽象类 抽象类的语法 abstract class XX {//这是抽象类 private String name; public XX(String name) { this.name = name; } public abstract void YY(); //这是抽象方法 } 抽象类的使用细节 抽象类可以没有抽象方法 抽象类不能被实例化,但可以有构造器 一旦类包含了abstract方法,则这个类必须被声明为abstract abstract只能修饰类和方法 抽象类的本质还是类,可以有类的一切内容 抽象方法不能有主体,即不能实现 如果一个类继承了抽象类,则它也必须实现抽象类的所有抽象方法,除非他自己也是抽象类 抽象方法不能被final、static、private修饰,因为这些都会阻碍类方法的重写 练习题 1)思考:abstract final class A{}能编译通过吗,why? 2)思考:abstract public static void test2()能编译通过吗,why? 3)思考:abstract private void test3();能编译通过吗,why? 答案是:都不能通过编译,final、static、private三者均阻碍类方法的重写 4)编写一个Employee类,声明为抽象类,包含如下三个属性:name,id,salary,提供必要的构造器和抽象方法:work()。对于Manager类来说,他既是员工,还具有奖金(bonus)的属性。请使用继承的思想,设计CommonEmployee类和Manager类,要求类中提供必要的方法进行属性访问,实现work(),提示“经理/普通员工名字工作中… 答案代码略:比较简单也比较长,就不放了 抽象类的最佳实践——模板设计模式 先阅读下面这段代码 public class TestTemplate { public static void main(String[] args) { new AA().job(); new BB().job(); } } class AA { public void job() { long start = System.currentTimeMillis(); int sum = 0; for (int i = 1; i <= 100000000; i++) { sum += i; } long end = System.currentTimeMillis(); System.out.println("AA耗时:" + (end - start)); } } class BB { public void job() { long start = System.currentTimeMillis(); int sum = 0; for (int i = 1; i <= 10000000; i++) { sum *= i; } long end = System.currentTimeMillis(); System.out.println("BB耗时:" + (end - start)); } } 我们可以发现,两个类中的job方法其实有重复性逻辑,我们考虑让其变简洁 于是我们可以考虑把job方法中的计时逻辑提取出来,只在job方法中保留工作逻辑 public void calTime() { long start = System.currentTimeMillis(); this.job(); long end = System.currentTimeMillis(); System.out.println("BB耗时:" + (end - start)); } public void job() { int sum = 0; for (int i = 1; i <= 100000000; i++) { sum += i; } } 这样虽然job里的内容少了,但是整体代码量并没有减轻,并且calTime方法的大部分逻辑在AA类和BB类中是重合的。假如还有CC、DD类,那会更加臃肿。 为了让代码更加简洁,复用性更高,我们对代码进行更进一步的修改,考虑把calTime方法统一提取到一个更高级别的类,在其中需要调用job方法,job方法的具体实现存在于子类中。 public class TestTemplate { public static void main(String[] args) { new AA().calTime(); new BB().calTime(); } } abstract class Template { public void calTime() { long start = System.currentTimeMillis(); this.job(); long end = System.currentTimeMillis(); System.out.println("耗时:" + (end - start)); } public abstract void job(); } class AA extends Template { public void job() { int sum = 0; for (int i = 1; i <= 100000000; i++) { sum += i; } } } class BB extends Template { public void job() { int sum = 0; for (int i = 1; i <= 100000000; i++) { sum += i; } } } 简单的说,抽象类的意义就是提升代码可复用性(把公共代码提取到父类抽象类中),同时定义统一规范(用抽象方法强制要求子类实现某些行为),告诉其他人,这个抽象类里哪些方法需要得到重写 2 个帖子 - 1 位参与者 阅读完整话题
final关键字 final可以修饰类、属性、方法、局部变量。 final的使用时机 不希望某个类被继承时 不希望某个类中属性的值被修改时 不希望类中的某方法被子类重写时 不希望局部变量的值被修改时 final修饰不同目标的具体含义 修饰目标 含义 类 不可被继承 方法 不可被重写,但可以被子类继承 属性 不可修改值 局部变量 不可修改值 方法参数 不可修改值 final的注意事项 final常量的命名通常为XX_YY final修饰的属性定义时必须被赋初值,初始化的位置如下 直接赋值 构造器内 构造代码块内 final修饰静态属性时,初始化位置如下 定义时 静态代码块内 final类不可被继承,但可以实例化 final修饰的方法虽然不可被重写,但可以继承 如果一个类已经是final了,那它无法被继承,因此其中的方法没必要用final final和static搭配使用效率更高,不会导致“类加载”,因为底层编译器做了优化处理 public class Test { public static void main(String[] args) { System.out.println(AA.num); } } class AA{ public static final int num = 10; static { System.out.println("AA的静态代码块被调用"); }; } 输出 10 静态代码块未被执行,说明类甚至没有被加载,编译器生成字节码文件时,编译器把对常量 num 的符号引用替换为常量值 10(即字面量) 包装类(Integer、Double、Float、Boolean都是fianl类型),String也是final类型,无法被继承 final如果修饰引用类型变量,不可修改的是引用地址本身,引用对象的内部状态可变 练习题 写计算圆的面积,分别在三个地方尝试初始化PI的值 package com.hspedu.finall; public class Test { public static void main(String[] args) { Circle circle = new Circle(2.0); System.out.println(circle.calArea()); } } class Circle { private double radius; private final double PI = 3.14; public Circle(double radius) { this.radius = radius; //PI = 3.14; //在构造器里赋值也可以 } { //PI = 3.14; 在普通代码块里赋值也可以 } public double calArea() { return PI * radius * radius; } } PS:注意三个地方初始化都可以,但是只能保留一个,因为如果保留两个就相当于修改PI的值了 1 个帖子 - 1 位参与者 阅读完整话题
最近在研究如何在离线的情况下,在一个手机app里面,把一句话提取出信息,例如姓名,职位,公司名称,兴趣爱好等。目前是采用规则为主,自训小模型为辅的方式,但是效果差强人意。不知道还有没有更好的技术方案? 3 个帖子 - 2 位参与者 阅读完整话题
需要生成不带背景的人物图。GPT开了几个会话,各种关键字都试了:transparent background、png、alpha channel、no background。每张图都带了真实的方格来忽悠我.. 9 个帖子 - 4 位参与者 阅读完整话题
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
不知道触发哪个关键字导致无法正常发帖,改过好几版也不行,所以只能贴图了。
目的不是为了生成文章,而是为了分析公众号的内容: 比如输入一个关键字,比如输入“供应链”这个关键字,然后去抓取供应链相关的公众号有哪些?然后在用ai分析这些公众号的内容结构 7 个帖子 - 5 位参与者 阅读完整话题
想用它预处理文档,然后帮助提取与关键字匹配的内容。看起来很理想,但实际提取不尽人意。 我做了个小工具,把切分后的每段,与关键字的匹配程度,可视化出来了,可以直观看到匹配度。 从网页内容中,提取“中国人民银行的编制”,效果不错: 从网页内容中,提取“中国人民银行的职责”,开头匹配的很好,但漏掉了接下来的那些: 可以看到,在提取“中国人民银行的职责”匹配的句段时,会漏掉枚举的那几条。 这可以说是段落拆分的问题,我是逐句拆分的,问题是,段落怎么才能合理拆分呢?如果必须知道哪些跟哪些是在一起的,那就相当于已经提前理解文章的内容了,就没有必要上向量数据库了。 所以,向量数据库如何做是比较合适的呢?就比如我上面的这种应用场景。